Note that all users who use Vital DB, an open biosignal dataset, must agree to the Data Use Agreement below. If you do not agree, please close this window. The Data Use Agreement is available here: https://vitaldb.net/dataset/#h.vcpgs1yemdb5
For the Project Draft submission see the DL4H_Team_24_Project_Draft.ipynb notebook in the project repository.
The project repository can be found at: https://github.com/abarrie2/cs598-dlh-project
This project aims to reproduce findings from the paper titled "Predicting intraoperative hypotension using deep learning with waveforms of arterial blood pressure, electroencephalogram, and electrocardiogram: Retrospective study" by Jo Y-Y et al. (2022) [1]. This study introduces a deep learning model that predicts intraoperative hypotension (IOH) events before they occur, utilizing a combination of arterial blood pressure (ABP), electroencephalogram (EEG), and electrocardiogram (ECG) signals.
Intraoperative hypotension (IOH) is a common and significant surgical complication defined by a mean arterial pressure drop below 65 mmHg. It is associated with increased risks of myocardial infarction, acute kidney injury, and heightened postoperative mortality. Effective prediction and timely intervention can substantially enhance patient outcomes.
Initial attempts to predict IOH primarily used arterial blood pressure (ABP) waveforms. A foundational study by Hatib F et al. (2018) titled "Machine-learning Algorithm to Predict Hypotension Based on High-fidelity Arterial Pressure Waveform Analysis" [2] showed that machine learning could forecast IOH events using ABP with reasonable accuracy. This finding spurred further research into utilizing various physiological signals for IOH prediction.
Subsequent advancements included the development of the Acumen™ hypotension prediction index, which was studied in "AcumenTM hypotension prediction index guidance for prevention and treatment of hypotension in noncardiac surgery: a prospective, single-arm, multicenter trial" by Bao X et al. (2024) [3]. This trial integrated a hypotension prediction index into blood pressure monitoring equipment, demonstrating its effectiveness in reducing the number and duration of IOH events during surgeries. Further study is needed to determine whether this resultant reduction in IOH events transalates into improved postoperative patient outcomes.
Building on these advancements, the paper by Jo Y-Y et al. (2022) proposes a deep learning approach that enhances prediction accuracy by incorporating EEG and ECG signals along with ABP. This multi-modal method, evaluated over prediction windows of 3, 5, 10, and 15 minutes, aims to provide a comprehensive physiological profile that could predict IOH more accurately and earlier. Their results indicate that the combination of ABP and EEG significantly improves performance metrics such as AUROC and AUPRC, outperforming models that use fewer signals or different combinations.
Our project seeks to reproduce and verify Jo Y-Y et al.'s results to assess whether this integrated approach can indeed improve IOH prediction accuracy, thereby potentially enhancing surgical safety and patient outcomes.
The original paper investigated the following hypotheses:
Results were compared using AUROC and AUPRC scores. Based on the results described in the original paper, we expect that Hypothesis 2 will be confirmed, and that Hypotheses 1 and 3 will not be confirmed.
In order to perform the corresponding experiments, we will implement a CNN-based model that can be configured to train and infer using the following four model variations:
We will measure the performance of these configurations using the same AUROC and AUPRC metrics as used in the original paper. To test hypothesis 1 we will compare the AUROC and AUPRC measures between model variation 1 and model variation 2. To test hypothesis 2 we will compare the AUROC and AUPRC measures between model variation 1 and model variation 3. To test hypothesis 3 we will compare the AUROC and AUPRC measures between model variation 1 and model variation 4. For all of the above measures and experiment combinations, we will operate multiple experiments where the time-to-IOH event prediction will use the following prediction windows:
In the event that we are compute-bound, we will prioritize the 3-minute prediction window experiments as they are the most relevant to the original paper's findings.
The predictive power of ABP, ECG and ABP + ECG models at 3-, 5-, 10- and 15-minute prediction windows:
In order to demonstrate the functioning of the code in a short (ie, <8 minute limit) the following options and modifications were used:
MAX_CASES was set to 20. The total number of cases to be used in the full training set is 3296, but the smaller numbers allows demonstration of each section of the pipeline.vitaldb_cache is prepopulated in Google Colab. The cache file is approx. 800MB and contains the raw and mini-fied copies of the source dataset and is downloaded from Google Drive. This is much faster than using the vitaldb API, but is again only a fraction of the data. The full dataset can be downloaded with the API or prepopulated by following the instructions in the "Bulk Data Download" section below.max_epochs is set to 6. With the small dataset, training is fast and shows the decreasing training and validation losses. In the full model run, max_epochs will be set to 100. In both cases early stopping is enabled and will stop training if the validation losses stop decreasing for five consecutive epochs.The methodology section is composed of the following subsections: Environment, Data and Model.
The environment setup differs based on whether you are running the code on a local machine or on Google Colab. The following sections provide instructions for setting up the environment in each case.
Create conda environment for the project using the environment.yml file:
conda env create --prefix .envs/dlh-team24 -f environment.yml
Activate the environment with:
conda activate .envs/dlh-team24
The following code snippet installs the required packages and downloads the necessary files in a Google Colab environment:
# Google Colab environments have a `/content` directory. Use this as a proxy for running Colab-only code
COLAB_ENV = "google.colab" in str(get_ipython())
if COLAB_ENV:
#install vitaldb
%pip install vitaldb
# Executing in Colab therefore download cached preprocessed data.
# TODO: Integrate this with the setup local cache data section below.
# Check for file existence before overwriting.
import gdown
gdown.download(id="15b5Nfhgj3McSO2GmkVUKkhSSxQXX14hJ", output="vitaldb_cache.tgz")
!tar -zxf vitaldb_cache.tgz
# Download sqi_filter.csv from github repo
!wget https://raw.githubusercontent.com/abarrie2/cs598-dlh-project/main/sqi_filter.csv
All other required packages are already installed in the Google Colab environment.
# Import packages
import os
import random
import sys
import uuid
import copy
from collections import defaultdict
from timeit import default_timer as timer
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.manifold import TSNE
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report, roc_auc_score, precision_recall_curve, auc, confusion_matrix
from sklearn.metrics import RocCurveDisplay, PrecisionRecallDisplay, average_precision_score
from sklearn.preprocessing import StandardScaler
from sklearn.neighbors import KNeighborsClassifier
import torch
from torch.utils.data import Dataset
import vitaldb
import h5py
import torch.nn as nn
import torch.nn.functional as F
from tqdm import tqdm
from datetime import datetime
Set random seeds to generate consistent results:
RANDOM_SEED = 42
def reset_random_state():
random.seed(RANDOM_SEED)
np.random.seed(RANDOM_SEED)
torch.manual_seed(RANDOM_SEED)
if torch.cuda.is_available():
torch.cuda.manual_seed(RANDOM_SEED)
torch.cuda.manual_seed_all(RANDOM_SEED)
torch.backends.cudnn.deterministic = True
torch.backends.cudnn.benchmark = False
os.environ["PYTHONHASHSEED"] = str(RANDOM_SEED)
reset_random_state()
Set device to GPU or MPS if available
device = torch.device("cuda" if torch.cuda.is_available() else "mps" if (torch.backends.mps.is_available() and torch.backends.mps.is_built()) else "cpu")
print(f"Using device: {device}")
Using device: mps
Define class to print to console and simultaneously save to file:
class ForkedStdout:
def __init__(self, file_path):
self.file = open(file_path, 'w')
self.stdout = sys.stdout
def write(self, message):
self.stdout.write(message)
self.file.write(message)
def flush(self):
self.stdout.flush()
self.file.flush()
def __enter__(self):
sys.stdout = self
def __exit__(self, exc_type, exc_val, exc_tb):
sys.stdout = self.stdout
self.file.close()
Data for this project is sourced from the open biosignal VitalDB dataset as described in "VitalDB, a high-fidelity multi-parameter vital signs database in surgical patients" by Lee H-C et al. (2022) [4], which contains perioperative vital signs and numerical data from 6,388 cases of non-cardiac (general, thoracic, urological, and gynecological) surgery patients who underwent routine or emergency surgery at Seoul National University Hospital between 2016 and 2017. The dataset includes ABP, ECG, and EEG signals, as well as other physiological data. The dataset is available through an API and Python library, and at PhysioNet: https://physionet.org/content/vitaldb/1.0.0/
Characteristics of the dataset: | Characteristic | Value | Details | |-----------------------|-----------------------------|------------------------| | Total number of cases | 6,388 | | | Sex (male) | 3,243 (50.8%) | | | Age (years) | 59 | Range: 48-68 | | Height (cm) | 162 | Range: 156-169 | | Weight (kg) | 61 | Range: 53-69 | | Tram-Rac 4A tracks | 6,355 (99.5%) | Sampling rate: 500Hz | | BIS Vista tracks | 5,566 (87.1%) | Sampling rate: 128Hz | | Case duration (min) | 189 | Range: 27-1041 |
Labels are only known after processing the data. In the original paper, there were an average of 1.6 IOH events per case and 5.7 non-events per case so we expect approximately 10,221 IOH events and 364,116 non-events in the dataset.
Data will be processed as follows:
VitalDB data is static, so local copies can be stored and reused to avoid expensive downloads and to speed up data processing.
The default directory defined below is in the project .gitignore file. If this is modified, the new directory should also be added to the project .gitignore.
VITALDB_CACHE = './vitaldb_cache'
VITAL_ALL = f"{VITALDB_CACHE}/vital_all"
VITAL_MINI = f"{VITALDB_CACHE}/vital_mini"
VITAL_METADATA = f"{VITALDB_CACHE}/metadata"
VITAL_MODELS = f"{VITALDB_CACHE}/models"
VITAL_RUNS = f"{VITALDB_CACHE}/runs"
VITAL_PREPROCESS_SCRATCH = f"{VITALDB_CACHE}/data_scratch"
VITAL_EXTRACTED_SEGMENTS = f"{VITALDB_CACHE}/segments"
TRACK_CACHE = None
SEGMENT_CACHE = None
# when USE_MEMORY_CACHING is enabled, track data will be persisted in an in-memory cache. Not useful once we have already pre-extracted all event segments
# DON'T USE: Stores items in memory that are later not used. Causes OOM on segment extraction.
USE_MEMORY_CACHING = False
# When RESET_CACHE is set to True, it will ensure the TRACK_CACHE is disposed and recreated when we do dataset initialization.
# Use as a shortcut to wiping cache rather than restarting kernel
RESET_CACHE = False
PREDICTION_WINDOW = 3
#PREDICTION_WINDOW = 'ALL'
ALL_PREDICTION_WINDOWS = [3, 5, 10, 15]
# Maximum number of cases of interest for which to download data.
# Set to a small value (ex: 20) for demo purposes, else set to None to disable and download and process all.
MAX_CASES = None
#MAX_CASES = 300
# Preloading Cases: when true, all matched cases will have the _mini tracks extracted and put into in-mem dict
PRELOADING_CASES = False
PRELOADING_SEGMENTS = True
# Perform Data Preprocessing: do we want to take the raw vital file and extract segments of interest for training?
PERFORM_DATA_PREPROCESSING = False
if not os.path.exists(VITALDB_CACHE):
os.mkdir(VITALDB_CACHE)
if not os.path.exists(VITAL_ALL):
os.mkdir(VITAL_ALL)
if not os.path.exists(VITAL_MINI):
os.mkdir(VITAL_MINI)
if not os.path.exists(VITAL_METADATA):
os.mkdir(VITAL_METADATA)
if not os.path.exists(VITAL_MODELS):
os.mkdir(VITAL_MODELS)
if not os.path.exists(VITAL_RUNS):
os.mkdir(VITAL_RUNS)
if not os.path.exists(VITAL_PREPROCESS_SCRATCH):
os.mkdir(VITAL_PREPROCESS_SCRATCH)
if not os.path.exists(VITAL_EXTRACTED_SEGMENTS):
os.mkdir(VITAL_EXTRACTED_SEGMENTS)
print(os.listdir(VITALDB_CACHE))
['segments_filter_neg', 'segments_bak', 'runs_old', '.DS_Store', 'Unconfirmed 744573.crdownload', 'segments_filter_neg_pos', 'vital_mini_bak_0501', 'vital_all', 'segments_sizes_sp.txt', 'models_all_cases_baseline', 'models', 'docs', 'vital_mini.tar', 'data_scratch', 'segments_md5_sp.txt', 'vital_file_md5_mw.txt', 'segments_bak_0501', 'osfs', 'vital_mini', 'segments_filter_none', 'vital_file_mini_md5_sp.txt', 'vital_file_mini_file_sizes_sp.txt', 'runs', 'metadata', 'segments', 'models_old', 'vital_file_md5_sp.txt']
This step is not required, but will significantly speed up downstream processing and avoid a high volume of API requests to the VitalDB web site.
The cache population code checks if the .vital files are locally available, and can be populated by calling the vitaldb API or by manually prepopulating the cache (recommended)
wget -r -N -c -np https://physionet.org/files/vitaldb/1.0.0/ to download the files in a terminalvital_files into the ${VITAL_ALL} directory.# Returns the Pandas DataFrame for the specified dataset.
# One of 'cases', 'labs', or 'trks'
# If the file exists locally, create and return the DataFrame.
# Else, download and cache the csv first, then return the DataFrame.
def vitaldb_dataframe_loader(dataset_name):
if dataset_name not in ['cases', 'labs', 'trks']:
raise ValueError(f'Invalid dataset name: {dataset_name}')
file_path = f'{VITAL_METADATA}/{dataset_name}.csv'
if os.path.isfile(file_path):
print(f'{dataset_name}.csv exists locally.')
df = pd.read_csv(file_path)
return df
else:
print(f'downloading {dataset_name} and storing in the local cache for future reuse.')
df = pd.read_csv(f'https://api.vitaldb.net/{dataset_name}')
df.to_csv(file_path, index=False)
return df
cases = vitaldb_dataframe_loader('cases')
cases = cases.set_index('caseid')
cases.shape
cases.csv exists locally.
(6388, 73)
cases.index.nunique()
6388
cases.head()
| subjectid | casestart | caseend | anestart | aneend | opstart | opend | adm | dis | icu_days | ... | intraop_colloid | intraop_ppf | intraop_mdz | intraop_ftn | intraop_rocu | intraop_vecu | intraop_eph | intraop_phe | intraop_epi | intraop_ca | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| caseid | |||||||||||||||||||||
| 1 | 5955 | 0 | 11542 | -552 | 10848.0 | 1668 | 10368 | -236220 | 627780 | 0 | ... | 0 | 120 | 0.0 | 100 | 70 | 0 | 10 | 0 | 0 | 0 |
| 2 | 2487 | 0 | 15741 | -1039 | 14921.0 | 1721 | 14621 | -221160 | 1506840 | 0 | ... | 0 | 150 | 0.0 | 0 | 100 | 0 | 20 | 0 | 0 | 0 |
| 3 | 2861 | 0 | 4394 | -590 | 4210.0 | 1090 | 3010 | -218640 | 40560 | 0 | ... | 0 | 0 | 0.0 | 0 | 50 | 0 | 0 | 0 | 0 | 0 |
| 4 | 1903 | 0 | 20990 | -778 | 20222.0 | 2522 | 17822 | -201120 | 576480 | 1 | ... | 0 | 80 | 0.0 | 100 | 100 | 0 | 50 | 0 | 0 | 0 |
| 5 | 4416 | 0 | 21531 | -1009 | 22391.0 | 2591 | 20291 | -67560 | 3734040 | 13 | ... | 0 | 0 | 0.0 | 0 | 160 | 0 | 10 | 900 | 0 | 2100 |
5 rows × 73 columns
cases['sex'].value_counts()
sex M 3243 F 3145 Name: count, dtype: int64
trks = vitaldb_dataframe_loader('trks')
trks = trks.set_index('caseid')
trks.shape
trks.csv exists locally.
(486449, 2)
trks.index.nunique()
6388
trks.groupby('caseid')[['tid']].count().plot();
trks.groupby('caseid')[['tid']].count().hist();
trks.groupby('tname').count().sort_values(by='tid', ascending=False)
| tid | |
|---|---|
| tname | |
| Solar8000/HR | 6387 |
| Solar8000/PLETH_SPO2 | 6386 |
| Solar8000/PLETH_HR | 6386 |
| Primus/CO2 | 6362 |
| Primus/PAMB_MBAR | 6361 |
| ... | ... |
| Orchestra/AMD_VOL | 1 |
| Solar8000/ST_V5 | 1 |
| Orchestra/NPS_VOL | 1 |
| Orchestra/AMD_RATE | 1 |
| Orchestra/VEC_VOL | 1 |
196 rows × 1 columns
SNUADC/ART
arterial blood pressure waveform
Parameter, Description, Type/Hz, Unit
SNUADC/ART, Arterial pressure wave, W/500, mmHg
trks[trks['tname'].str.contains('SNUADC/ART')].shape
(3645, 2)
SNUADC/ECG_II
electrocardiogram waveform
Parameter, Description, Type/Hz, Unit
SNUADC/ECG_II, ECG lead II wave, W/500, mV
trks[trks['tname'].str.contains('SNUADC/ECG_II')].shape
(6355, 2)
BIS/EEG1_WAV
electroencephalogram waveform
Parameter, Description, Type/Hz, Unit
BIS/EEG1_WAV, EEG wave from channel 1, W/128, uV
trks[trks['tname'].str.contains('BIS/EEG1_WAV')].shape
(5871, 2)
These are the subset of case ids for which modelling and analysis will be performed based upon inclusion criteria and waveform data availability.
# TRACK NAMES is used for metadata analysis via API
TRACK_NAMES = ['SNUADC/ART', 'SNUADC/ECG_II', 'BIS/EEG1_WAV']
TRACK_SRATES = [500, 500, 128]
# EXTRACTION TRACK NAMES adds the EVENT track which is only used when doing actual file i/o
EXTRACTION_TRACK_NAMES = ['SNUADC/ART', 'SNUADC/ECG_II', 'BIS/EEG1_WAV', 'EVENT']
EXTRACTION_TRACK_SRATES = [500, 500, 128, 1]
# As in the paper, select cases which meet the following criteria:
#
# For patients, the inclusion criteria were as follows:
# (1) adults (age >= 18)
# (2) administered general anaesthesia
# (3) undergone non-cardiac surgery.
#
# For waveform data, the inclusion criteria were as follows:
# (1) no missing monitoring for ABP, ECG, and EEG waveforms
# (2) no cases containing false events or non-events due to poor signal quality
# (checked in second stage of data preprocessing)
# Adult
inclusion_1 = cases.loc[cases['age'] >= 18].index
print(f'{len(cases)-len(inclusion_1)} cases excluded, {len(inclusion_1)} remaining due to age criteria')
# General Anesthesia
inclusion_2 = cases.loc[cases['ane_type'] == 'General'].index
print(f'{len(cases)-len(inclusion_2)} cases excluded, {len(inclusion_2)} remaining due to anesthesia criteria')
# Non-cardiac surgery
inclusion_3 = cases.loc[
~cases['opname'].str.contains("cardiac", case=False)
& ~cases['opname'].str.contains("aneurysmal", case=False)
].index
print(f'{len(cases)-len(inclusion_3)} cases excluded, {len(inclusion_3)} remaining due to non-cardiac surgery criteria')
# ABP, ECG, EEG waveforms
inclusion_4 = trks.loc[trks['tname'].isin(TRACK_NAMES)].index.value_counts()
inclusion_4 = inclusion_4[inclusion_4 == len(TRACK_NAMES)].index
print(f'{len(cases)-len(inclusion_4)} cases excluded, {len(inclusion_4)} remaining due to missing waveform data')
# SQI filter
# NOTE: this depends on a sqi_filter.csv generated by external processing
inclusion_5 = pd.read_csv('sqi_filter.csv', header=None, names=['caseid','sqi']).set_index('caseid').index
print(f'{len(cases)-len(inclusion_5)} cases excluded, {len(inclusion_5)} remaining due to SQI threshold not being met')
# Only include cases with known good waveforms.
exclusion_6 = pd.read_csv('malformed_tracks_filter.csv', header=None, names=['caseid']).set_index('caseid').index
inclusion_6 = cases.index.difference(exclusion_6)
print(f'{len(cases)-len(inclusion_6)} cases excluded, {len(inclusion_6)} remaining due to malformed waveforms')
cases_of_interest_idx = inclusion_1 \
.intersection(inclusion_2) \
.intersection(inclusion_3) \
.intersection(inclusion_4) \
.intersection(inclusion_5) \
.intersection(inclusion_6)
cases_of_interest = cases.loc[cases_of_interest_idx]
print()
print(f'{cases_of_interest_idx.shape[0]} out of {cases.shape[0]} total cases remaining after exclusions applied')
# Trim cases of interest to MAX_CASES
if MAX_CASES:
cases_of_interest_idx = cases_of_interest_idx[:MAX_CASES]
print(f'{cases_of_interest_idx.shape[0]} cases of interest selected')
57 cases excluded, 6331 remaining due to age criteria 345 cases excluded, 6043 remaining due to anesthesia criteria 14 cases excluded, 6374 remaining due to non-cardiac surgery criteria 3019 cases excluded, 3369 remaining due to missing waveform data 0 cases excluded, 6388 remaining due to SQI threshold not being met 533 cases excluded, 5855 remaining due to malformed waveforms 2763 out of 6388 total cases remaining after exclusions applied 2763 cases of interest selected
cases_of_interest.head(n=5)
| subjectid | casestart | caseend | anestart | aneend | opstart | opend | adm | dis | icu_days | ... | intraop_colloid | intraop_ppf | intraop_mdz | intraop_ftn | intraop_rocu | intraop_vecu | intraop_eph | intraop_phe | intraop_epi | intraop_ca | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| caseid | |||||||||||||||||||||
| 1 | 5955 | 0 | 11542 | -552 | 10848.0 | 1668 | 10368 | -236220 | 627780 | 0 | ... | 0 | 120 | 0.0 | 100 | 70 | 0 | 10 | 0 | 0 | 0 |
| 4 | 1903 | 0 | 20990 | -778 | 20222.0 | 2522 | 17822 | -201120 | 576480 | 1 | ... | 0 | 80 | 0.0 | 100 | 100 | 0 | 50 | 0 | 0 | 0 |
| 7 | 5124 | 0 | 15770 | 477 | 14817.0 | 3177 | 14577 | -154320 | 623280 | 3 | ... | 0 | 0 | 0.0 | 0 | 120 | 0 | 0 | 0 | 0 | 0 |
| 10 | 2175 | 0 | 20992 | -1743 | 21057.0 | 2457 | 19857 | -220740 | 3580860 | 1 | ... | 0 | 90 | 0.0 | 0 | 110 | 0 | 20 | 500 | 0 | 600 |
| 12 | 491 | 0 | 31203 | -220 | 31460.0 | 5360 | 30860 | -208500 | 1519500 | 4 | ... | 200 | 100 | 0.0 | 100 | 70 | 0 | 20 | 0 | 0 | 3300 |
5 rows × 73 columns
These are the subset of tracks (waveforms) for the cases of interest identified above.
# A single case maps to one or more waveform tracks. Select only the tracks required for analysis.
trks_of_interest = trks.loc[cases_of_interest_idx][trks.loc[cases_of_interest_idx]['tname'].isin(TRACK_NAMES)]
trks_of_interest.shape
(8289, 2)
trks_of_interest.head(n=5)
| tname | tid | |
|---|---|---|
| caseid | ||
| 1 | BIS/EEG1_WAV | 0aa685df768489a18a5e9f53af0d83bf60890c73 |
| 1 | SNUADC/ART | 724cdd7184d7886b8f7de091c5b135bd01949959 |
| 1 | SNUADC/ECG_II | 8c9161aaae8cb578e2aa7b60f44234d98d2b3344 |
| 4 | BIS/EEG1_WAV | 1b4c2379be3397a79d3787dd810190150dc53f27 |
| 4 | SNUADC/ART | e28777c4706fe3a5e714bf2d91821d22d782d802 |
trks_of_interest_idx = trks_of_interest.set_index('tid').index
trks_of_interest_idx.shape
(8289,)
Tracks data are large and therefore expensive to download every time used.
By default, the .vital file format stores all tracks for each case internally. Since only select tracks per case are required, each .vital file can be further reduced by discarding the unused tracks.
# Ensure the full vital file dataset is available for cases of interest.
count_downloaded = 0
count_present = 0
#for i, idx in enumerate(cases.index):
for idx in cases_of_interest_idx:
full_path = f'{VITAL_ALL}/{idx:04d}.vital'
if not os.path.isfile(full_path):
print(f'Missing vital file: {full_path}')
# Download and save the file.
vf = vitaldb.VitalFile(idx)
vf.to_vital(full_path)
count_downloaded += 1
else:
count_present += 1
print()
print(f'Count of cases of interest: {cases_of_interest_idx.shape[0]}')
print(f'Count of vital files downloaded: {count_downloaded}')
print(f'Count of vital files already present: {count_present}')
Count of cases of interest: 2763 Count of vital files downloaded: 0 Count of vital files already present: 2763
# Convert vital files to "mini" versions including only the subset of tracks defined in TRACK_NAMES above.
# Only perform conversion for the cases of interest.
# NOTE: If this cell is interrupted, it can be restarted and will continue where it left off.
count_minified = 0
count_present = 0
count_missing_tracks = 0
count_not_fixable = 0
# If set to true, local mini files are checked for all tracks even if the mini file is already present.
FORCE_VALIDATE = False
for idx in cases_of_interest_idx:
full_path = f'{VITAL_ALL}/{idx:04d}.vital'
mini_path = f'{VITAL_MINI}/{idx:04d}_mini.vital'
if FORCE_VALIDATE or not os.path.isfile(mini_path):
print(f'Creating mini vital file: {idx}')
vf = vitaldb.VitalFile(full_path, EXTRACTION_TRACK_NAMES)
if len(vf.get_track_names()) != 4:
print(f'Missing track in vital file: {idx}, {set(EXTRACTION_TRACK_NAMES).difference(set(vf.get_track_names()))}')
count_missing_tracks += 1
# Attempt to download from VitalDB directly and see if missing tracks are present.
vf = vitaldb.VitalFile(idx, EXTRACTION_TRACK_NAMES)
if len(vf.get_track_names()) != 4:
print(f'Unable to fix missing tracks: {idx}')
count_not_fixable += 1
continue
if vf.get_track_samples(EXTRACTION_TRACK_NAMES[0], 1/EXTRACTION_TRACK_SRATES[0]).shape[0] == 0:
print(f'Empty track: {idx}, {EXTRACTION_TRACK_NAMES[0]}')
count_not_fixable += 1
continue
if vf.get_track_samples(EXTRACTION_TRACK_NAMES[1], 1/EXTRACTION_TRACK_SRATES[1]).shape[0] == 0:
print(f'Empty track: {idx}, {EXTRACTION_TRACK_NAMES[1]}')
count_not_fixable += 1
continue
if vf.get_track_samples(EXTRACTION_TRACK_NAMES[2], 1/EXTRACTION_TRACK_SRATES[2]).shape[0] == 0:
print(f'Empty track: {idx}, {EXTRACTION_TRACK_NAMES[2]}')
count_not_fixable += 1
continue
if vf.get_track_samples(EXTRACTION_TRACK_NAMES[3], 1/EXTRACTION_TRACK_SRATES[3]).shape[0] == 0:
print(f'Empty track: {idx}, {EXTRACTION_TRACK_NAMES[3]}')
count_not_fixable += 1
continue
vf.to_vital(mini_path)
count_minified += 1
else:
count_present += 1
print()
print(f'Count of cases of interest: {cases_of_interest_idx.shape[0]}')
print(f'Count of vital files minified: {count_minified}')
print(f'Count of vital files already present: {count_present}')
print(f'Count of vital files missing tracks: {count_missing_tracks}')
print(f'Count of vital files not fixable: {count_not_fixable}')
Count of cases of interest: 2763 Count of vital files minified: 0 Count of vital files already present: 2763 Count of vital files missing tracks: 0 Count of vital files not fixable: 0
Preprocessing characteristics are different for each of the three signal categories:
apply_bandpass_filter() implements the bandpass filter using scipy.signal
apply_zscore_normalization() implements the Z-score normalization using numpy
from scipy.signal import butter, lfilter, spectrogram
# define two methods for data preprocessing
def apply_bandpass_filter(data, lowcut, highcut, fs, order=5):
b, a = butter(order, [lowcut, highcut], fs=fs, btype='band')
y = lfilter(b, a, np.nan_to_num(data))
return y
def apply_zscore_normalization(signal):
mean = np.nanmean(signal)
std = np.nanstd(signal)
return (signal - mean) / std
# Filtering Demonstration
# temp experimental, code to be incorporated into overall preloader process
# for now it's just dumping example plots of the before/after filtered signal data
caseidx = 1
file_path = f"{VITAL_MINI}/{caseidx:04d}_mini.vital"
vf = vitaldb.VitalFile(file_path, TRACK_NAMES)
originalAbp = None
filteredAbp = None
originalEcg = None
filteredEcg = None
originalEeg = None
filteredEeg = None
ABP_TRACK_NAME = "SNUADC/ART"
ECG_TRACK_NAME = "SNUADC/ECG_II"
EEG_TRACK_NAME = "BIS/EEG1_WAV"
for i, (track_name, rate) in enumerate(zip(TRACK_NAMES, TRACK_SRATES)):
# Get samples for this track
track_samples = vf.get_track_samples(track_name, 1/rate)
#track_samples, _ = vf.get_samples(track_name, 1/rate)
print(f"Track {track_name} @ {rate}Hz shape {len(track_samples)}")
if track_name == ABP_TRACK_NAME:
# ABP waveforms are used without further pre-processing
originalAbp = track_samples
filteredAbp = track_samples
elif track_name == ECG_TRACK_NAME:
originalEcg = track_samples
# ECG waveforms are band-pass filtered between 1 and 40 Hz, and Z-score normalized
# first apply bandpass filter
filteredEcg = apply_bandpass_filter(track_samples, 1, 40, rate)
# then do z-score normalization
filteredEcg = apply_zscore_normalization(filteredEcg)
elif track_name == EEG_TRACK_NAME:
# EEG waveforms are band-pass filtered between 0.5 and 50 Hz
originalEeg = track_samples
filteredEeg = apply_bandpass_filter(track_samples, 0.5, 50, rate, 2)
def plotSignal(data, title):
plt.figure(figsize=(20, 5))
plt.plot(data)
plt.title(title)
plt.show()
plotSignal(originalAbp, "Original ABP")
plotSignal(originalAbp, "Unfiltered ABP")
plotSignal(originalEcg, "Original ECG")
plotSignal(filteredEcg, "Filtered ECG")
plotSignal(originalEeg, "Original EEG")
plotSignal(filteredEeg, "Filtered EEG")
Track SNUADC/ART @ 500Hz shape 5771049 Track SNUADC/ECG_II @ 500Hz shape 5771049 Track BIS/EEG1_WAV @ 128Hz shape 1477389
# Preprocess data tracks
ABP_TRACK_NAME = "SNUADC/ART"
ECG_TRACK_NAME = "SNUADC/ECG_II"
EEG_TRACK_NAME = "BIS/EEG1_WAV"
EVENT_TRACK_NAME = "EVENT"
MINI_FILE_FOLDER = VITAL_MINI
CACHE_FILE_FOLDER = VITAL_PREPROCESS_SCRATCH
if RESET_CACHE:
TRACK_CACHE = None
SEGMENT_CACHE = None
if TRACK_CACHE is None:
TRACK_CACHE = {}
SEGMENT_CACHE = {}
def get_track_data(case, print_when_file_loaded = False):
parsedFile = None
abp = None
eeg = None
ecg = None
events = None
for i, (track_name, rate) in enumerate(zip(EXTRACTION_TRACK_NAMES, EXTRACTION_TRACK_SRATES)):
# use integer case id and track name, delimited by pipe, as cache key
cache_label = f"{case}|{track_name}"
if cache_label not in TRACK_CACHE:
if parsedFile is None:
file_path = f"{MINI_FILE_FOLDER}/{case:04d}_mini.vital"
if print_when_file_loaded:
print(f"[{datetime.now()}] Loading vital file {file_path}")
parsedFile = vitaldb.VitalFile(file_path, EXTRACTION_TRACK_NAMES)
dataset = np.array(parsedFile.get_track_samples(track_name, 1/rate))
if track_name == ABP_TRACK_NAME:
# no filtering for ABP
abp = dataset
abp = pd.DataFrame(abp).ffill(axis=0).bfill(axis=0)[0].values
if USE_MEMORY_CACHING:
TRACK_CACHE[cache_label] = abp
elif track_name == ECG_TRACK_NAME:
ecg = dataset
# apply ECG filtering: first bandpass then do z-score normalization
ecg = pd.DataFrame(ecg).ffill(axis=0).bfill(axis=0)[0].values
ecg = apply_bandpass_filter(ecg, 1, 40, rate, 2)
ecg = apply_zscore_normalization(ecg)
if USE_MEMORY_CACHING:
TRACK_CACHE[cache_label] = ecg
elif track_name == EEG_TRACK_NAME:
eeg = dataset
eeg = pd.DataFrame(eeg).ffill(axis=0).bfill(axis=0)[0].values
# apply EEG filtering: bandpass only
eeg = apply_bandpass_filter(eeg, 0.5, 50, rate, 2)
if USE_MEMORY_CACHING:
TRACK_CACHE[cache_label] = eeg
elif track_name == EVENT_TRACK_NAME:
events = dataset
if USE_MEMORY_CACHING:
TRACK_CACHE[cache_label] = events
else:
# cache hit, pull from cache
if track_name == ABP_TRACK_NAME:
abp = TRACK_CACHE[cache_label]
elif track_name == ECG_TRACK_NAME:
ecg = TRACK_CACHE[cache_label]
elif track_name == EEG_TRACK_NAME:
eeg = TRACK_CACHE[cache_label]
elif track_name == EVENT_TRACK_NAME:
events = TRACK_CACHE[cache_label]
return (abp, ecg, eeg, events)
# ABP waveforms are used without further pre-processing
# ECG waveforms are band-pass filtered between 1 and 40 Hz, and Z-score normalized
# EEG waveforms are band-pass filtered between 0.5 and 50 Hz
if PRELOADING_CASES:
# determine disk cache file label
maxlabel = "ALL"
if MAX_CASES is not None:
maxlabel = str(MAX_CASES)
picklefile = f"{CACHE_FILE_FOLDER}/{PREDICTION_WINDOW}_minutes_MAX{maxlabel}.trackcache"
for track in tqdm(cases_of_interest_idx):
# getting track data will cause a cache-check and fill when missing
# will also apply appropriate filtering per track
get_track_data(track, False)
print(f"Generated track cache, {len(TRACK_CACHE)} records generated")
def get_segment_data(file_path):
abp = None
eeg = None
ecg = None
if USE_MEMORY_CACHING:
if file_path in SEGMENT_CACHE:
(abp, ecg, eeg) = SEGMENT_CACHE[file_path]
return (abp, ecg, eeg)
try:
with h5py.File(file_path, 'r') as f:
abp = np.array(f['abp'])
ecg = np.array(f['ecg'])
eeg = np.array(f['eeg'])
abp = np.array(abp)
eeg = np.array(eeg)
ecg = np.array(ecg)
if len(abp) > 30000:
abp = abp[:30000]
elif len(ecg) < 30000:
abp = np.resize(abp, (30000))
if len(ecg) > 30000:
ecg = ecg[:30000]
elif len(ecg) < 30000:
ecg = np.resize(ecg, (30000))
if len(eeg) > 7680:
eeg = eeg[:7680]
elif len(eeg) < 7680:
eeg = np.resize(eeg, (7680))
if USE_MEMORY_CACHING:
SEGMENT_CACHE[file_path] = (abp, ecg, eeg)
except:
abp = None
ecg = None
eeg = None
return (abp, ecg, eeg)
The following method is adapted from the preprocessing block of reference [6] (https://github.com/vitaldb/examples/blob/master/hypotension_art.ipynb)
The approach first finds an interoperative hypotensive event in the ABP waveform. It then backtracks to earlier in the waveform to extract a 60 second segment representing the waveform feature to use as model input. The figure below shows an example of this approach and is reproduced from the VitalDB example notebook referenced above.

def getSurgeryBoundariesInSeconds(event, debug=False):
eventIndices = np.argwhere(event==event)
# we are looking for the last index where the string contains 'start
lastStart = 0
firstFinish = len(event)-1
# find last start
for idx in eventIndices:
if 'started' in event[idx[0]]:
if debug:
print(event[idx[0]])
print(idx[0])
lastStart = idx[0]
# find first finish
for idx in eventIndices:
if 'finish' in event[idx[0]]:
if debug:
print(event[idx[0]])
print(idx[0])
firstFinish = idx[0]
break
if debug:
print(f'lastStart, firstFinish: {lastStart}, {firstFinish}')
return (lastStart, firstFinish)
def areCaseSegmentsCached(caseid):
seg_folder = f"{VITAL_EXTRACTED_SEGMENTS}/{caseid:04d}"
return os.path.exists(seg_folder) and len(os.listdir(seg_folder)) > 0
def isAbpSegmentValidNumpy(samples, debug=False):
valid = True
if np.isnan(samples).mean() > 0.1:
valid = False
if debug:
print(f">10% NaN")
elif (samples > 200).any():
valid = False
if debug:
print(f"Presence of BP > 200")
elif (samples < 30).any():
valid = False
if debug:
print(f"Presence of BP < 30")
elif np.max(samples) - np.min(samples) < 30:
if debug:
print(f"Max - Min test < 30")
valid = False
elif (np.abs(np.diff(samples)) > 30).any(): # abrupt change -> noise
if debug:
print(f"Abrupt change (noise)")
valid = False
return valid
def isAbpSegmentValid(vf, debug=False):
ABP_ECG_SRATE_HZ = 500
ABP_TRACK_NAME = "SNUADC/ART"
samples = np.array(vf.get_track_samples(ABP_TRACK_NAME, 1/ABP_ECG_SRATE_HZ))
return isAbpSegmentValidNumpy(samples, debug)
def saveCaseSegments(caseid, positiveSegments, negativeSegments, compresslevel=9, debug=False, forceWrite=False):
if len(positiveSegments) == 0 and len(negativeSegments) == 0:
# exit early if no events found
print(f'{caseid}: exit early, no segments to save')
return
# event composition
# predictiveSegmentStart in seconds, predictiveSegmentEnd in seconds, predWindow (0 for negative), abp, ecg, eeg)
# 0start, 1end, 2predwindow, 3abp, 4ecg, 5eeg
seg_folder = f"{VITAL_EXTRACTED_SEGMENTS}/{caseid:04d}"
if not os.path.exists(seg_folder):
# if directory needs to be created, then there are no cached segments
os.mkdir(seg_folder)
else:
if not forceWrite:
# exit early if folder already exists, case already produced
return
# prior to writing files out, clear existing files
for filename in os.listdir(seg_folder):
file_path = os.path.join(seg_folder, filename)
if debug:
print(f'deleting: {file_path}')
try:
if os.path.isfile(file_path):
os.unlink(file_path)
except Exception as e:
print('Failed to delete %s. Reason: %s' % (file_path, e))
count_pos_saved = 0
for i in range(0, len(positiveSegments)):
event = positiveSegments[i]
startIndex = event[0]
endIndex = event[1]
predWindow = event[2]
abp = event[3]
#ecg = event[4]
#eeg = event[5]
seg_filename = f"{caseid:04d}_{startIndex}_{predWindow:02d}_True.h5"
seg_fullpath = f"{seg_folder}/{seg_filename}"
if isAbpSegmentValidNumpy(abp, debug):
count_pos_saved += 1
abp = abp.tolist()
ecg = event[4].tolist()
eeg = event[5].tolist()
f = h5py.File(seg_fullpath, "w")
f.create_dataset('abp', data=abp, compression="gzip", compression_opts=compresslevel)
f.create_dataset('ecg', data=ecg, compression="gzip", compression_opts=compresslevel)
f.create_dataset('eeg', data=eeg, compression="gzip", compression_opts=compresslevel)
f.flush()
f.close()
f = None
abp = None
ecg = None
eeg = None
# f.create_dataset('label', data=[1], compression="gzip", compression_opts=compresslevel)
# f.create_dataset('pred_window', data=[event[2]], compression="gzip", compression_opts=compresslevel)
# f.create_dataset('caseid', data=[caseid], compression="gzip", compression_opts=compresslevel)
elif debug:
print(f"{caseid:04d} {predWindow:02d}min {startIndex} starttime = ignored, segment validity issues")
count_neg_saved = 0
for i in range(0, len(negativeSegments)):
event = negativeSegments[i]
startIndex = event[0]
endIndex = event[1]
predWindow = event[2]
abp = event[3]
#ecg = event[4]
#eeg = event[5]
seg_filename = f"{caseid:04d}_{startIndex}_0_False.h5"
seg_fullpath = f"{seg_folder}/{seg_filename}"
if isAbpSegmentValidNumpy(abp, debug):
count_neg_saved += 1
abp = abp.tolist()
ecg = event[4].tolist()
eeg = event[5].tolist()
f = h5py.File(seg_fullpath, "w")
f.create_dataset('abp', data=abp, compression="gzip", compression_opts=compresslevel)
f.create_dataset('ecg', data=ecg, compression="gzip", compression_opts=compresslevel)
f.create_dataset('eeg', data=eeg, compression="gzip", compression_opts=compresslevel)
f.flush()
f.close()
f = None
abp = None
ecg = None
eeg = None
# f.create_dataset('label', data=[0], compression="gzip", compression_opts=compresslevel)
# f.create_dataset('pred_window', data=[0], compression="gzip", compression_opts=compresslevel)
# f.create_dataset('caseid', data=[caseid], compression="gzip", compression_opts=compresslevel)
elif debug:
print(f"{caseid:04d} CleanWindow {startIndex} starttime = ignored, segment validity issues")
if count_neg_saved == 0 and count_pos_saved == 0:
print(f'{caseid}: nothing saved, all segments filtered')
# Generate hypotensive events
# Hypotensive events are defined as a 1-minute interval with sustained ABP of less than 65 mmHg
# Note: Hypotensive events should be at least 20 minutes apart to minimize potential residual effects from previous events
# Generate hypotension non-events
# To sample non-events, 30-minute segments where the ABP was above 75 mmHG were selected, and then
# three one-minute samples of each waveform were obtained from the middle of the segment
# both occur in extract_segments
#VITAL_EXTRACTED_SEGMENTS
def extract_segments(
cases_of_interest_idx,
debug=False,
checkCache=True,
forceWrite=False,
returnSegments=False,
skipInvalidCleanEvents=False,
skipInvalidIohEvents=False
):
# Sampling rate for ABP and ECG, Hz. These rates should be the same. Default = 500
ABP_ECG_SRATE_HZ = 500
# Sampling rate for EEG. Default = 128
EEG_SRATE_HZ = 128
# Final dataset for training and testing the model.
positiveSegmentsMap = {}
negativeSegmentsMap = {}
iohEventsMap = {}
cleanEventsMap = {}
# Process each case and extract segments. For each segment identify presence of an event in the label zone.
count_cases = len(cases_of_interest_idx)
#for case_count, caseid in tqdm(enumerate(cases_of_interest_idx), total=count_cases):
for case_count, caseid in enumerate(cases_of_interest_idx):
if debug:
print(f'Loading case: {caseid:04d}, ({case_count + 1} of {count_cases})')
if checkCache and areCaseSegmentsCached(caseid):
if debug:
print(f'Skipping case: {caseid:04d}, already cached')
# skip records we've already cached
continue
# read the arterial waveform
(abp, ecg, eeg, event) = get_track_data(caseid)
if debug:
print(f'Length of {TRACK_NAMES[0]}: {abp.shape[0]}')
print(f'Length of {TRACK_NAMES[1]}: {ecg.shape[0]}')
print(f'Length of {TRACK_NAMES[2]}: {eeg.shape[0]}')
(startInSeconds, endInSeconds) = getSurgeryBoundariesInSeconds(event)
if debug:
print(f"Event markers indicate that surgery begins at {startInSeconds}s and ends at {endInSeconds}s.")
track_length_seconds = int(len(abp) / ABP_ECG_SRATE_HZ)
if debug:
print(f"Processing case {caseid} with length {track_length_seconds}s")
# check if the ABP segment in the surgery window is valid
if debug:
isSurgerySegmentValid = isAbpSegmentValidNumpy(abp[startInSeconds:endInSeconds])
print(f'{caseid}: surgery segment valid: {isSurgerySegmentValid}')
iohEvents = []
cleanEvents = []
i = 0
started = False
eofReached = False
trackStartIndex = None
# set i pointer (which operates in seconds) to start marker for surgery
i = startInSeconds
# FIRST PASS
# in the first forward pass, we are going to identify the start/end boundaries of all IOH events within the case
ioh_events_valid = []
while i < track_length_seconds - 60 and i < endInSeconds:
segmentStart = None
segmentEnd = None
segFound = False
# look forward one minute
abpSeg = abp[i * ABP_ECG_SRATE_HZ:(i + 60) * ABP_ECG_SRATE_HZ]
# roll forward until we hit a one minute window where mean ABP >= 65 so we know leads are connected and it's tracking
if not started:
if np.nanmean(abpSeg) >= 65:
started = True
trackStartIndex = i
# if we're started and mean abp for the window is <65, we are starting a new IOH event
elif np.nanmean(abpSeg) < 65:
segmentStart = i
# now seek forward to find end of event, perpetually checking the lats minute of the IOH event
for j in range(i + 60, track_length_seconds):
# look backward one minute
abpSegForward = abp[(j - 60) * ABP_ECG_SRATE_HZ:j * ABP_ECG_SRATE_HZ]
if np.nanmean(abpSegForward) >= 65:
segmentEnd = j - 1
break
if segmentEnd is None:
eofReached = True
else:
# otherwise, end of the IOH segment has been reached, record it
iohEvents.append((segmentStart, segmentEnd))
segFound = True
if skipInvalidIohEvents:
isIohSegmentValid = isAbpSegmentValidNumpy(abpSeg)
ioh_events_valid.append(isIohSegmentValid)
if debug:
print(f'{caseid}: ioh segment valid: {isIohSegmentValid}, {segmentStart}, {segmentEnd}, {t_abp.shape}')
else:
ioh_events_valid.append(True)
i += 1
if not started:
continue
elif eofReached:
break
elif segFound:
i = segmentEnd + 1
# SECOND PASS
# in the second forward pass, we are going to identify the start/end boundaries of all non-overlapping 30 minute "clean" windows
# reuse the 'start of signal' index from our first pass
if trackStartIndex is None:
trackStartIndex = startInSeconds
i = trackStartIndex
eofReached = False
clean_events_valid = []
while i < track_length_seconds - 1800 and i < endInSeconds:
segmentStart = None
segmentEnd = None
segFound = False
startIndex = i
endIndex = i + 1800
# check to see if this 30 minute window overlaps any IOH events, if so ffwd to end of latest overlapping IOH
overlapFound = False
latestEnd = None
for event in iohEvents:
# case 1: starts during an event
if startIndex >= event[0] and startIndex < event[1]:
latestEnd = event[1]
overlapFound = True
# case 2: ends during an event
elif endIndex >= event[0] and endIndex < event[1]:
latestEnd = event[1]
overlapFound = True
# case 3: event occurs entirely inside of the window
elif startIndex < event[0] and endIndex > event[1]:
latestEnd = event[1]
overlapFound = True
# FFWD if we found an overlap
if overlapFound:
i = latestEnd + 1
continue
# look forward 30 minutes
abpSeg = abp[startIndex * ABP_ECG_SRATE_HZ:endIndex * ABP_ECG_SRATE_HZ]
# if we're started and mean abp for the window is >= 75, we are starting a new clean event
if np.nanmean(abpSeg) >= 75:
overlapFound = False
latestEnd = None
for event in iohEvents:
# case 1: starts during an event
if startIndex >= event[0] and startIndex < event[1]:
latestEnd = event[1]
overlapFound = True
# case 2: ends during an event
elif endIndex >= event[0] and endIndex < event[1]:
latestEnd = event[1]
overlapFound = True
# case 3: event occurs entirely inside of the window
elif startIndex < event[0] and endIndex > event[1]:
latestEnd = event[1]
overlapFound = True
if not overlapFound:
segFound = True
segmentEnd = endIndex
cleanEvents.append((startIndex, endIndex))
if skipInvalidCleanEvents:
isCleanSegmentValid = isAbpSegmentValidNumpy(abpSeg)
clean_events_valid.append(isCleanSegmentValid)
if debug:
print(f'{caseid}: clean segment valid: {isCleanSegmentValid}, {startIndex}, {endIndex}, {abpSeg.shape}')
else:
clean_events_valid.append(True)
i += 10
if segFound:
i = segmentEnd + 1
if debug:
print(f"IOH Events for case {caseid}: {iohEvents}")
print(f"Clean Events for case {caseid}: {cleanEvents}")
positiveSegments = []
negativeSegments = []
# THIRD PASS
# in the third pass, we will use the collections of ioh event windows to generate our actual extracted segments based on our prediction window (positive labels)
for i in range(0, len(iohEvents)):
# Don't extract segments from invalid IOH event windows.
if not ioh_events_valid[i]:
continue
if debug:
print(f"Checking event {iohEvents[i]}")
# we want to review current event boundaries, as well as previous event boundaries if available
event = iohEvents[i]
previousEvent = None
if i > 0:
previousEvent = iohEvents[i - 1]
for predWindow in ALL_PREDICTION_WINDOWS:
if debug:
print(f"Checking event {iohEvents[i]} for pred {predWindow}")
iohEventStart = event[0]
predictiveSegmentEnd = event[0] - (predWindow*60)
predictiveSegmentStart = predictiveSegmentEnd - 60
if (predictiveSegmentStart < 0):
# don't rewind before the beginning of the track
if debug:
print(f"Checking event {iohEvents[i]} for pred {predWindow} - exit, before beginning")
continue
elif (predictiveSegmentStart < trackStartIndex):
# don't rewind before the beginning of signal in track
if debug:
print(f"Checking event {iohEvents[i]} for pred {predWindow} - exit, before track start")
continue
elif previousEvent is not None:
# does this event window come before or during the previous event?
overlapFound = False
# case 1: starts during an event
if predictiveSegmentStart >= previousEvent[0] and predictiveSegmentStart < previousEvent[1]:
overlapFound = True
# case 2: ends during an event
elif iohEventStart >= previousEvent[0] and iohEventStart < previousEvent[1]:
overlapFound = True
# case 3: event occurs entirely inside of the window
elif predictiveSegmentStart < previousEvent[0] and iohEventStart > previousEvent[1]:
overlapFound = True
# do not extract a case if we overlap witha nother IOH
if overlapFound:
if debug:
print(f"Checking event {iohEvents[i]} for pred {predWindow} - exit, overlap with earlier segment")
continue
# track the positive segment
positiveSegments.append((predictiveSegmentStart, predictiveSegmentEnd, predWindow,
abp[predictiveSegmentStart*ABP_ECG_SRATE_HZ:predictiveSegmentEnd*ABP_ECG_SRATE_HZ],
ecg[predictiveSegmentStart*ABP_ECG_SRATE_HZ:predictiveSegmentEnd*ABP_ECG_SRATE_HZ],
eeg[predictiveSegmentStart*EEG_SRATE_HZ:predictiveSegmentEnd*EEG_SRATE_HZ]))
# FOURTH PASS
# in the fourth and final pass, we will use the collections of clean event windows to generate our actual extracted segments based (negative labels)
for i in range(0, len(cleanEvents)):
# Don't extract segments from invalid clean event windows.
if not clean_events_valid[i]:
continue
# everything will be 30 minutes long at least
event = cleanEvents[i]
# choose sample 1 @ 10 minutes
# choose sample 2 @ 15 minutes
# choose sample 3 @ 20 minutes
timeAtTen = event[0] + 600
timeAtFifteen = event[0] + 900
timeAtTwenty = event[0] + 1200
negativeSegments.append((timeAtTen, timeAtTen + 60, 0,
abp[timeAtTen*ABP_ECG_SRATE_HZ:(timeAtTen + 60)*ABP_ECG_SRATE_HZ],
ecg[timeAtTen*ABP_ECG_SRATE_HZ:(timeAtTen + 60)*ABP_ECG_SRATE_HZ],
eeg[timeAtTen*EEG_SRATE_HZ:(timeAtTen + 60)*EEG_SRATE_HZ]))
negativeSegments.append((timeAtFifteen, timeAtFifteen + 60, 0,
abp[timeAtFifteen*ABP_ECG_SRATE_HZ:(timeAtFifteen + 60)*ABP_ECG_SRATE_HZ],
ecg[timeAtFifteen*ABP_ECG_SRATE_HZ:(timeAtFifteen + 60)*ABP_ECG_SRATE_HZ],
eeg[timeAtFifteen*EEG_SRATE_HZ:(timeAtFifteen + 60)*EEG_SRATE_HZ]))
negativeSegments.append((timeAtTwenty, timeAtTwenty + 60, 0,
abp[timeAtTwenty*ABP_ECG_SRATE_HZ:(timeAtTwenty + 60)*ABP_ECG_SRATE_HZ],
ecg[timeAtTwenty*ABP_ECG_SRATE_HZ:(timeAtTwenty + 60)*ABP_ECG_SRATE_HZ],
eeg[timeAtTwenty*EEG_SRATE_HZ:(timeAtTwenty + 60)*EEG_SRATE_HZ]))
if returnSegments:
positiveSegmentsMap[caseid] = positiveSegments
negativeSegmentsMap[caseid] = negativeSegments
iohEventsMap[caseid] = iohEvents
cleanEventsMap[caseid] = cleanEvents
saveCaseSegments(caseid, positiveSegments, negativeSegments, 9, debug=debug, forceWrite=forceWrite)
#if debug:
print(f'{caseid}: positiveSegments: {len(positiveSegments)}, negativeSegments: {len(negativeSegments)}')
return positiveSegmentsMap, negativeSegmentsMap, iohEventsMap, cleanEventsMap
Ensure that all needed segments are in place for the cases that are being used. If data is already stored on disk this method returns immediately.
print('Time to extract segments!')
Time to extract segments!
MANUAL_EXTRACT=True
SKIP_INVALID_CLEAN_EVENTS=True
SKIP_INVALID_IOH_EVENTS=True
if MANUAL_EXTRACT:
mycoi = cases_of_interest_idx
#mycoi = cases_of_interest_idx[:2800]
#mycoi = [1]
cnt = 0
mod = 0
for ci in mycoi:
cnt += 1
if mod % 100 == 0:
print(f'count processed: {mod}, current case index: {ci}')
try:
p, n, i, c = extract_segments([ci], debug=False, checkCache=True,
forceWrite=True, returnSegments=False,
skipInvalidCleanEvents=SKIP_INVALID_CLEAN_EVENTS,
skipInvalidIohEvents=SKIP_INVALID_IOH_EVENTS)
p = None
n = None
i = None
c = None
except:
print(f'error on extract segment: {ci}')
mod += 1
print(f'extracted: {cnt}')
count processed: 0, current case index: 1 count processed: 100, current case index: 229 count processed: 200, current case index: 481 count processed: 300, current case index: 740 count processed: 400, current case index: 954 count processed: 500, current case index: 1160 count processed: 600, current case index: 1367 count processed: 700, current case index: 1595 count processed: 800, current case index: 1822 count processed: 900, current case index: 2055 count processed: 1000, current case index: 2317 count processed: 1100, current case index: 2533 count processed: 1200, current case index: 2775 count processed: 1300, current case index: 3014 count processed: 1400, current case index: 3218 count processed: 1500, current case index: 3442 count processed: 1600, current case index: 3682 count processed: 1700, current case index: 3879 count processed: 1800, current case index: 4109 count processed: 1900, current case index: 4347 count processed: 2000, current case index: 4603 count processed: 2100, current case index: 4830 count processed: 2200, current case index: 5072 count processed: 2300, current case index: 5314 count processed: 2400, current case index: 5568 count processed: 2500, current case index: 5793 count processed: 2600, current case index: 6017 count processed: 2700, current case index: 6248 extracted: 2763
def printAbp(case_id_to_check, plot_invalid_only=False):
vf_path = f'{VITAL_MINI}/{case_id_to_check:04d}_mini.vital'
if not os.path.isfile(vf_path):
return
vf = vitaldb.VitalFile(vf_path)
abp = vf.to_numpy(TRACK_NAMES[0], 1/500)
print(f'Case {case_id_to_check}')
print(f'ABP Shape: {abp.shape}')
print(f'nanmin: {np.nanmin(abp)}')
print(f'nanmean: {np.nanmean(abp)}')
print(f'nanmax: {np.nanmax(abp)}')
is_valid = isAbpSegmentValidNumpy(abp, debug=True)
print(f'valid: {is_valid}')
if plot_invalid_only and is_valid:
return
plt.figure(figsize=(20, 5))
plt_color = 'C0' if is_valid else 'red'
plt.plot(abp, plt_color)
plt.title(f'ABP - Entire Track - Case {case_id_to_check} - {abp.shape[0] / 500} seconds')
plt.axhline(y = 65, color = 'maroon', linestyle = '--')
plt.show()
def printSegments(segmentsMap, case_id_to_check, print_label, normalize=False):
for (x1, x2, r, abp, ecg, eeg) in segmentsMap[case_id_to_check]:
print(f'{print_label}: Case {case_id_to_check}')
print(f'lookback window: {r} min')
print(f'start time: {x1}')
print(f'end time: {x2}')
print(f'length: {x2 - x1} sec')
print(f'ABP Shape: {abp.shape}')
print(f'ECG Shape: {ecg.shape}')
print(f'EEG Shape: {eeg.shape}')
print(f'nanmin: {np.nanmin(abp)}')
print(f'nanmean: {np.nanmean(abp)}')
print(f'nanmax: {np.nanmax(abp)}')
is_valid = isAbpSegmentValidNumpy(abp, debug=True)
print(f'valid: {is_valid}')
# ABP normalization
x_abp = np.copy(abp)
if normalize:
x_abp -= 65
x_abp /= 65
plt.figure(figsize=(20, 5))
plt_color = 'C0' if is_valid else 'red'
plt.plot(x_abp, plt_color)
plt.title('ABP')
plt.axhline(y = 65, color = 'maroon', linestyle = '--')
plt.show()
plt.figure(figsize=(20, 5))
plt.plot(ecg, 'teal')
plt.title('ECG')
plt.show()
plt.figure(figsize=(20, 5))
plt.plot(eeg, 'indigo')
plt.title('EEG')
plt.show()
print()
def printEvents(abp_raw, eventsMap, case_id_to_check, print_label, normalize=False):
for (x1, x2) in eventsMap[case_id_to_check]:
print(f'{print_label}: Case {case_id_to_check}')
print(f'start time: {x1}')
print(f'end time: {x2}')
print(f'length: {x2 - x1} sec')
abp = abp_raw[x1*500:x2*500]
print(f'ABP Shape: {abp.shape}')
print(f'nanmin: {np.nanmin(abp)}')
print(f'nanmean: {np.nanmean(abp)}')
print(f'nanmax: {np.nanmax(abp)}')
is_valid = isAbpSegmentValidNumpy(abp, debug=True)
print(f'valid: {is_valid}')
# ABP normalization
x_abp = np.copy(abp)
if normalize:
x_abp -= 65
x_abp /= 65
plt.figure(figsize=(20, 5))
plt_color = 'C0' if is_valid else 'red'
plt.plot(x_abp, plt_color)
plt.title('ABP')
plt.axhline(y = 65, color = 'maroon', linestyle = '--')
plt.show()
print()
def moving_average(x, seconds=60):
w = seconds * 500
return np.convolve(np.squeeze(x), np.ones(w), 'valid') / w
def printAbpOverlay(
case_id_to_check,
positiveSegmentsMap,
negativeSegmentsMap,
iohEventsMap,
cleanEventsMap,
movingAverage=False
):
def overlay_segments(plt, segmentsMap, color, linestyle, positive=False):
for (x1, x2, r, abp, ecg, eeg) in segmentsMap:
sx1 = x1*500
sx2 = x2*500
mycolor = color
if positive:
if r == 3:
mycolor = 'red'
elif r == 5:
mycolor = 'crimson'
elif r == 10:
mycolor = 'tomato'
else:
mycolor = 'salmon'
plt.axvline(x = sx1, color = mycolor, linestyle = linestyle)
plt.axvline(x = sx2, color = mycolor, linestyle = linestyle)
plt.axvspan(sx1, sx2, facecolor = mycolor, alpha = 0.1)
def overlay_events(plt, eventsMap, color, linestyle):
for (x1, x2) in eventsMap:
sx1 = x1*500
sx2 = x2*500
plt.axvline(x = sx1, color = color, linestyle = linestyle)
plt.axvline(x = sx2, color = color, linestyle = linestyle)
plt.axvspan(sx1, sx2, facecolor = color, alpha = 0.1)
vf_path = f'{VITAL_MINI}/{case_id_to_check:04d}_mini.vital'
if not os.path.isfile(vf_path):
return
vf = vitaldb.VitalFile(vf_path)
abp = vf.to_numpy(TRACK_NAMES[0], 1/500)
abp_mov_avg = None
if movingAverage:
abp_mov_avg = moving_average(abp)
print(f'Case {case_id_to_check}')
print(f'ABP Shape: {abp.shape}')
print(f'nanmin: {np.nanmin(abp)}')
print(f'nanmean: {np.nanmean(abp)}')
print(f'nanmax: {np.nanmax(abp)}')
is_valid = isAbpSegmentValidNumpy(abp, debug=True)
print(f'valid: {is_valid}')
plt.figure(figsize=(24, 8))
plt_color = 'C0' if is_valid else 'red'
plt.plot(abp, plt_color)
plt.title(f'ABP - Entire Track - Case {case_id_to_check} - {abp.shape[0] / 500} seconds')
plt.axhline(y = 65, color = 'maroon', linestyle = '--')
if movingAverage:
plt.plot(abp_mov_avg, 'maroon')
# https://matplotlib.org/stable/gallery/lines_bars_and_markers/linestyles.html#linestyles
overlay_segments(plt, positiveSegmentsMap[case_id_to_check], 'crimson', (0, (1, 1)), positive=True)
overlay_segments(plt, negativeSegmentsMap[case_id_to_check], 'teal', (0, (1, 1)))
overlay_events(plt, iohEventsMap[case_id_to_check], 'brown', '-')
overlay_events(plt, cleanEventsMap[case_id_to_check], 'teal', '-')
plt.show()
# Global flag to control creating track and segment plots.
# These plots are expensive to create, but very interesting.
# Disable when training in bulk to speed up notebook processing.
PERFORM_TRACK_VALIDITY_CHECKS = False
# Check if all ABPs are well formed. Fast load and scan of the raw track data for ABP.
DISPLAY_REALITY_CHECK_ABP=True
DISPLAY_REALITY_CHECK_ABP_FIRST_ONLY=True
if PERFORM_TRACK_VALIDITY_CHECKS and DISPLAY_REALITY_CHECK_ABP:
for case_id_to_check in cases_of_interest_idx:
printAbp(case_id_to_check, plot_invalid_only=False)
if DISPLAY_REALITY_CHECK_ABP_FIRST_ONLY:
break
# These are Vital Files removed because of malformed ABP waveforms.
DISPLAY_MALFORMED_ABP=True
DISPLAY_MALFORMED_ABP_FIRST_ONLY=True
if PERFORM_TRACK_VALIDITY_CHECKS and DISPLAY_MALFORMED_ABP:
malformed_case_ids = pd.read_csv('malformed_tracks_filter.csv', header=None, names=['caseid']).set_index('caseid').index
for case_id_to_check in malformed_case_ids:
printAbp(case_id_to_check)
if DISPLAY_MALFORMED_ABP_FIRST_ONLY:
break
DISPLAY_NO_SEGMENTS_CASES=True
DISPLAY_NO_SEGMENTS_CASES_FIRST_ONLY=True
if PERFORM_TRACK_VALIDITY_CHECKS and DISPLAY_NO_SEGMENTS_CASES:
no_segments_case_ids = [3413, 3476, 3533, 3992, 4328, 4648, 4703, 4733, 5130, 5501, 5693, 5908]
for case_id_to_check in no_segments_case_ids:
printAbp(case_id_to_check)
if DISPLAY_NO_SEGMENTS_CASES_FIRST_ONLY:
break
Generate segment data for one or more cases. Perform a deep analysis of event and segment quality.
#mycoi = cases_of_interest_idx
my_cases_of_interest_idx = cases_of_interest_idx[:10]
#mycoi = [1]
# Note: By default, match extract segments processing block above.
# However, regenerate data real time to allow seeing impacts on segment extraction.
# This is why both checkCache and forceWrite are false by default.
positiveSegmentsMap, negativeSegmentsMap, iohEventsMap, cleanEventsMap = None, None, None, None
if PERFORM_TRACK_VALIDITY_CHECKS:
positiveSegmentsMap, negativeSegmentsMap, iohEventsMap, cleanEventsMap = \
extract_segments(my_cases_of_interest_idx, debug=False,
checkCache=False, forceWrite=False, returnSegments=True,
skipInvalidCleanEvents=SKIP_INVALID_CLEAN_EVENTS,
skipInvalidIohEvents=SKIP_INVALID_IOH_EVENTS)
Select a specific case to perform detailed low level analysis.
case_id_to_check = my_cases_of_interest_idx[0]
print(case_id_to_check)
print()
if PERFORM_TRACK_VALIDITY_CHECKS:
print((
len(positiveSegmentsMap[case_id_to_check]),
len(negativeSegmentsMap[case_id_to_check]),
len(iohEventsMap[case_id_to_check]),
len(cleanEventsMap[case_id_to_check])
))
1
if PERFORM_TRACK_VALIDITY_CHECKS:
printAbp(case_id_to_check)
Used to define the range in front of which positive segments will be extracted. Positive samples happen in front of this region.
tmp_abp = None
if PERFORM_TRACK_VALIDITY_CHECKS:
tmp_vf_path = f'{VITAL_MINI}/{case_id_to_check:04d}_mini.vital'
tmp_vf = vitaldb.VitalFile(tmp_vf_path)
tmp_abp = tmp_vf.to_numpy(TRACK_NAMES[0], 1/500)
if PERFORM_TRACK_VALIDITY_CHECKS:
printEvents(tmp_abp, iohEventsMap, case_id_to_check, 'IOH Event Segment', normalize=False)
Used to define the range from in which negative segments will be extracted. Negative samples happen within this region.
if PERFORM_TRACK_VALIDITY_CHECKS:
printEvents(tmp_abp, cleanEventsMap, case_id_to_check, 'Clean Event Segment', normalize=False)
One minute regions sampled and used for training the model for "positive" events.
if PERFORM_TRACK_VALIDITY_CHECKS:
printSegments(positiveSegmentsMap, case_id_to_check, 'Positive Segment - IOH Event', normalize=False)
One minute regions sampled and used for training the model for "negative" events.
if PERFORM_TRACK_VALIDITY_CHECKS:
printSegments(negativeSegmentsMap, case_id_to_check, 'Negative Segment - Non-Event', normalize=False)
For each of the cases in my_cases_of_interest_idx overlay the results of event and segment extraction.
DISPLAY_OVERLAY_CHECK_ABP=True
DISPLAY_OVERLAY_CHECK_ABP_FIRST_ONLY=True
if PERFORM_TRACK_VALIDITY_CHECKS and DISPLAY_OVERLAY_CHECK_ABP:
for case_id_to_check in my_cases_of_interest_idx:
printAbpOverlay(case_id_to_check, positiveSegmentsMap,
negativeSegmentsMap, iohEventsMap, cleanEventsMap, movingAverage=True)
if DISPLAY_OVERLAY_CHECK_ABP_FIRST_ONLY:
break
# free memory
del tmp_abp
def get_segment_attributes_from_filename(file_path):
pieces = os.path.basename(file_path).split('_')
case = int(pieces[0])
startX = int(pieces[1])
predWindow = int(pieces[2])
label = pieces[3].replace('.h5', '')
return (case, startX, predWindow, label)
count_negative_samples = 0
count_positive_samples = 0
samples = []
from glob import glob
seg_folder = f"{VITAL_EXTRACTED_SEGMENTS}"
filenames = [y for x in os.walk(seg_folder) for y in glob(os.path.join(x[0], '*.h5'))]
for filename in filenames:
(case, start_x, pred_window, label) = get_segment_attributes_from_filename(filename)
#print((case, start_x, pred_window, label))
# only load cases for cases of interest; this folder could have segments for hundreds of cases
if case not in cases_of_interest_idx:
continue
#PREDICTION_WINDOW = 3
if pred_window == 0 or pred_window == PREDICTION_WINDOW or PREDICTION_WINDOW == 'ALL':
#print((case, start_x, pred_window, label))
if label == 'True':
count_positive_samples += 1
else:
count_negative_samples += 1
sample = (filename, label)
samples.append(sample)
print()
print(f"samples loaded: {len(samples):5} ")
print(f'count negative samples: {count_negative_samples:5}')
print(f'count positive samples: {count_positive_samples:5}')
samples loaded: 19676 count negative samples: 14298 count positive samples: 5378
# Divide by cases
sample_cases = defaultdict(lambda: [])
for fn, _ in samples:
(case, start_x, pred_window, label) = get_segment_attributes_from_filename(fn)
sample_cases[case].append((fn, label))
# understand any missing cases of interest
sample_cases_idx = pd.Index(sample_cases.keys())
missing_case_ids = cases_of_interest_idx.difference(sample_cases_idx)
print(f'cases with no samples: {missing_case_ids.shape[0]}')
print(f' {missing_case_ids}')
print()
# Split data into training, validation, and test sets
# Use 6:1:3 ratio and prevent samples from a single case from being split across different sets
# Note: number of samples at each time point is not the same, because the first event can occur before the 3/5/10/15 minute mark
# Set target sizes
train_ratio = 0.6
val_ratio = 0.1
test_ratio = 1 - train_ratio - val_ratio # ensure ratios sum to 1
# Split samples into train and other
sample_cases_train, sample_cases_other = train_test_split(list(sample_cases.keys()), test_size=(1 - train_ratio), random_state=RANDOM_SEED)
# Split other into val and test
sample_cases_val, sample_cases_test = train_test_split(sample_cases_other, test_size=(test_ratio / (1 - train_ratio)), random_state=RANDOM_SEED)
# Check how many samples are in each set
print(f'Train/Val/Test Summary by Cases')
print(f"Train cases: {len(sample_cases_train):5}, ({len(sample_cases_train) / len(sample_cases):.2%})")
print(f"Val cases: {len(sample_cases_val):5}, ({len(sample_cases_val) / len(sample_cases):.2%})")
print(f"Test cases: {len(sample_cases_test):5}, ({len(sample_cases_test) / len(sample_cases):.2%})")
print(f"Total cases: {(len(sample_cases_train) + len(sample_cases_val) + len(sample_cases_test)):5}")
cases with no samples: 20
Index([ 149, 561, 864, 979, 1158, 1174, 1317, 1957, 2221, 2830, 2859, 4380,
4755, 4783, 5080, 5204, 5266, 5755, 6275, 6360],
dtype='int64')
Train/Val/Test Summary by Cases
Train cases: 1645, (59.97%)
Val cases: 274, (9.99%)
Test cases: 824, (30.04%)
Total cases: 2743
sample_cases_train = set(sample_cases_train)
sample_cases_val = set(sample_cases_val)
sample_cases_test = set(sample_cases_test)
samples_train = []
samples_val = []
samples_test = []
for cid, segs in sample_cases.items():
if cid in sample_cases_train:
for seg in segs:
samples_train.append(seg)
if cid in sample_cases_val:
for seg in segs:
samples_val.append(seg)
if cid in sample_cases_test:
for seg in segs:
samples_test.append(seg)
# Check how many samples are in each set
print(f'Train/Val/Test Summary by Events')
print(f"Train events: {len(samples_train):5}, ({len(samples_train) / len(samples):.2%})")
print(f"Val events: {len(samples_val):5}, ({len(samples_val) / len(samples):.2%})")
print(f"Test events: {len(samples_test):5}, ({len(samples_test) / len(samples):.2%})")
print(f"Total events: {(len(samples_train) + len(samples_val) + len(samples_test)):5}")
Train/Val/Test Summary by Events Train events: 11725, (59.59%) Val events: 2013, (10.23%) Test events: 5938, (30.18%) Total events: 19676
PRINT_ALL_CASE_SPLIT_DETAILS = False
case_to_sample_distribution = defaultdict(lambda: {'train': [0, 0], 'val': [0, 0], 'test': [0, 0]})
def populate_case_to_sample_distribution(mysamples, idx):
neg = 0
pos = 0
for fn, _ in mysamples:
(case, start_x, pred_window, label) = get_segment_attributes_from_filename(fn)
slot = 0 if label == 'False' else 1
case_to_sample_distribution[case][idx][slot] += 1
if slot == 0:
neg += 1
else:
pos += 1
return (neg, pos)
train_neg, train_pos = populate_case_to_sample_distribution(samples_train, 'train')
val_neg, val_pos = populate_case_to_sample_distribution(samples_val, 'val')
test_neg, test_pos = populate_case_to_sample_distribution(samples_test, 'test')
print(f'Total Cases Present: {len(case_to_sample_distribution):5}')
print()
train_tot = train_pos + train_neg
val_tot = val_pos + val_neg
test_tot = test_pos + test_neg
print(f'Train: P: {train_pos:5} ({(train_pos/train_tot):.2}), N: {train_neg:5} ({(train_neg/train_tot):.2})')
print(f'Val: P: {val_pos:5} ({(val_pos/val_tot):.2}), N: {val_neg:5} ({(val_neg/val_tot):.2})')
print(f'Test: P: {test_pos:5} ({(test_pos/test_tot):.2}), N: {test_neg:5} ({(test_neg/test_tot):.2})')
print()
total_pos = train_pos + val_pos + test_pos
total_neg = train_neg + val_neg + test_neg
total = total_pos + total_neg
print(f'P/N Ratio: {(total_pos)}:{(total_neg)}')
print(f'P Percent: {(total_pos/total):.2}')
print(f'N Percent: {(total_neg/total):.2}')
print()
if PRINT_ALL_CASE_SPLIT_DETAILS:
for ci in sorted(case_to_sample_distribution.keys()):
print(f'{ci}: {case_to_sample_distribution[ci]}')
Total Cases Present: 2743 Train: P: 3221 (0.27), N: 8504 (0.73) Val: P: 591 (0.29), N: 1422 (0.71) Test: P: 1566 (0.26), N: 4372 (0.74) P/N Ratio: 5378:14298 P Percent: 0.27 N Percent: 0.73
def check_data_leakage(full_data, train_data, val_data, test_data):
# Convert to sets for easier operations
full_data_set = set(full_data)
train_data_set = set(train_data)
val_data_set = set(val_data)
test_data_set = set(test_data)
# Check if train, val, test are subsets of full_data
if not train_data_set.issubset(full_data_set):
return "Train data has leakage"
if not val_data_set.issubset(full_data_set):
return "Validation data has leakage"
if not test_data_set.issubset(full_data_set):
return "Test data has leakage"
# Check if train, val, test are disjoint
if train_data_set & val_data_set:
return "Train and validation data are not disjoint"
if train_data_set & test_data_set:
return "Train and test data are not disjoint"
if val_data_set & test_data_set:
return "Validation and test data are not disjoint"
return "No data leakage detected"
# Usage
print(check_data_leakage(list(sample_cases.keys()), sample_cases_train, sample_cases_val, sample_cases_test))
No data leakage detected
# Create vitalDataset class
class vitalDataset(Dataset):
def __init__(self, samples, normalize_abp=False):
self.samples = samples
self.normalize_abp = normalize_abp
def __len__(self):
return len(self.samples)
def __getitem__(self, idx):
# Get metadata for this event
segment = self.samples[idx]
file_path = segment[0]
label = (segment[1] == "True" or segment[1] == "True.vital")
(abp, ecg, eeg) = get_segment_data(file_path)
if abp is None or eeg is None or ecg is None:
return (np.zeros(30000), np.zeros(30000), np.zeros(7680), 0)
if self.normalize_abp:
abp -= 65
abp /= 65
return abp, ecg, eeg, label
NORMALIZE_ABP = False
train_dataset = vitalDataset(samples_train, NORMALIZE_ABP)
val_dataset = vitalDataset(samples_val, NORMALIZE_ABP)
test_dataset = vitalDataset(samples_test, NORMALIZE_ABP)
def generate_nan_means(mydataset):
xs = np.zeros(len(mydataset))
ys = np.zeros(len(mydataset), dtype=int)
for i, (abp, ecg, eeg, y) in enumerate(iter(mydataset)):
xs[i] = np.nanmean(abp)
ys[i] = int(y)
return pd.DataFrame({'abp_nanmean': xs, 'label': ys})
def generate_nan_means_summaries(tr, va, te, group='all'):
if group == 'all':
return pd.DataFrame({
'train': tr.describe()['abp_nanmean'],
'validation': va.describe()['abp_nanmean'],
'test': te.describe()['abp_nanmean']
})
mytr = tr.reset_index()
myva = va.reset_index()
myte = te.reset_index()
label_flag = True if group == 'positive' else False
return pd.DataFrame({
'train': mytr[mytr['label'] == label_flag].describe()['abp_nanmean'],
'validation': myva[myva['label'] == label_flag].describe()['abp_nanmean'],
'test': myte[myte['label'] == label_flag].describe()['abp_nanmean']
})
def plot_nan_means(df, plot_label):
mydf = df.reset_index()
maxCases = 'ALL' if MAX_CASES is None else MAX_CASES
plot_title = f'{plot_label} - ABP nanmean Values, {PREDICTION_WINDOW} Minutes, {maxCases} Cases'
ax = mydf[mydf['label'] == False].plot.scatter(
x='index', y='abp_nanmean', color='DarkBlue', label='Negative',
title=plot_title, figsize=(16,9))
negative_median = mydf[mydf['label'] == False]['abp_nanmean'].median()
ax.axhline(y=negative_median, color='DarkBlue', linestyle='--', label='Negative Median')
mydf[mydf['label'] == True].plot.scatter(
x='index', y='abp_nanmean', color='DarkOrange', label='Positive', ax=ax);
positive_median = mydf[mydf['label'] == True]['abp_nanmean'].median()
ax.axhline(y=positive_median, color='DarkOrange', linestyle='--', label='Positive Median')
ax.legend(loc='upper right')
def plot_nan_means_hist(df):
df.plot.hist(column=['abp_nanmean'], by='label', bins=50, figsize=(10, 8));
train_abp_nanmeans = generate_nan_means(train_dataset)
val_abp_nanmeans = generate_nan_means(val_dataset)
test_abp_nanmeans = generate_nan_means(test_dataset)
generate_nan_means_summaries(train_abp_nanmeans, val_abp_nanmeans, test_abp_nanmeans)
| train | validation | test | |
|---|---|---|---|
| count | 11725.000000 | 2013.000000 | 5938.000000 |
| mean | 85.342557 | 84.527469 | 85.337452 |
| std | 12.102408 | 11.928181 | 12.139388 |
| min | 65.136129 | 65.176681 | 65.178063 |
| 25% | 75.843523 | 75.141869 | 75.794924 |
| 50% | 83.549179 | 82.839065 | 83.643432 |
| 75% | 93.382970 | 92.584281 | 92.977931 |
| max | 138.285504 | 131.649859 | 147.949437 |
generate_nan_means_summaries(train_abp_nanmeans, val_abp_nanmeans, test_abp_nanmeans, group='positive')
| train | validation | test | |
|---|---|---|---|
| count | 3221.000000 | 591.000000 | 1566.000000 |
| mean | 76.393673 | 75.830934 | 76.462263 |
| std | 9.120690 | 8.735726 | 9.256418 |
| min | 65.136129 | 65.176681 | 65.178063 |
| 25% | 70.014729 | 69.719051 | 69.994147 |
| 50% | 74.056950 | 73.944380 | 74.136967 |
| 75% | 80.011449 | 79.447594 | 80.095860 |
| max | 132.143619 | 124.815472 | 136.381225 |
generate_nan_means_summaries(train_abp_nanmeans, val_abp_nanmeans, test_abp_nanmeans, group='negative')
| train | validation | test | |
|---|---|---|---|
| count | 8504.000000 | 1422.000000 | 4372.000000 |
| mean | 88.732062 | 88.141852 | 88.516442 |
| std | 11.341231 | 11.191253 | 11.452285 |
| min | 65.225560 | 66.221575 | 65.476802 |
| 25% | 80.095975 | 79.646864 | 79.987240 |
| 50% | 87.345195 | 86.884530 | 87.118146 |
| 75% | 95.959147 | 95.516197 | 95.679384 |
| max | 138.285504 | 131.649859 | 147.949437 |
plot_nan_means_hist(train_abp_nanmeans)
plot_nan_means_hist(val_abp_nanmeans)
plot_nan_means_hist(test_abp_nanmeans)
plot_nan_means(train_abp_nanmeans, 'Train')
plot_nan_means(val_abp_nanmeans, 'Validation')
plot_nan_means(test_abp_nanmeans, 'Test')
# Cleanup
del train_abp_nanmeans
del val_abp_nanmeans
del test_abp_nanmeans
Check if data can be easily classified using non-deep learning methods. Create a balanced sample of IOH and non-IOH events and use a simple classifier to see if the data can be easily separated. Datasets which can be easily separated by non-deep learning methods should also be easily classified by deep learning models.
MAX_CLASSIFICATION_SAMPLES = 250
MAX_SAMPLE_SIZE = 1600
classification_sample_size = MAX_SAMPLE_SIZE if len(samples) >= MAX_SAMPLE_SIZE else len(samples)
classification_samples = random.sample(samples, classification_sample_size)
positive_samples = []
negative_samples = []
for sample in classification_samples:
(sampleAbp, sampleEcg, sampleEeg) = get_segment_data(sample[0])
if sample[1] == "True":
positive_samples.append([sample[0], True, sampleAbp, sampleEcg, sampleEeg])
else:
negative_samples.append([sample[0], False, sampleAbp, sampleEcg, sampleEeg])
positive_samples = pd.DataFrame(positive_samples, columns=["file_path", "segment_label", "segment_abp", "segment_ecg", "segment_eeg"])
negative_samples = pd.DataFrame(negative_samples, columns=["file_path", "segment_label", "segment_abp", "segment_ecg", "segment_eeg"])
total_to_sample_pos = MAX_CLASSIFICATION_SAMPLES if len(positive_samples) >= MAX_CLASSIFICATION_SAMPLES else len(positive_samples)
total_to_sample_neg = MAX_CLASSIFICATION_SAMPLES if len(negative_samples) >= MAX_CLASSIFICATION_SAMPLES else len(negative_samples)
# Select up to 150 random samples where segment_label is True
positive_samples = positive_samples.sample(total_to_sample_pos, random_state=RANDOM_SEED)
# Select up to 150 random samples where segment_label is False
negative_samples = negative_samples.sample(total_to_sample_neg, random_state=RANDOM_SEED)
print(f'positive_samples: {len(positive_samples)}')
print(f'negative_samples: {len(negative_samples)}')
# Combine the positive and negative samples
samples_balanced = pd.concat([positive_samples, negative_samples])
positive_samples: 250 negative_samples: 250
Define function to build data for study. Each waveform field can be enabled or disabled:
def get_x_y(samples, use_abp, use_ecg, use_eeg):
# Create X and y, using data from `samples_balanced` and the `use_abp`, `use_ecg`, and `use_eeg` variables
X = []
y = []
for i in range(len(samples)):
row = samples.iloc[i]
sample = np.array([])
if use_abp:
if len(row['segment_abp']) != 30000:
print(len(row['segment_abp']))
sample = np.append(sample, row['segment_abp'])
if use_ecg:
if len(row['segment_ecg']) != 30000:
print(len(row['segment_ecg']))
sample = np.append(sample, row['segment_ecg'])
if use_eeg:
if len(row['segment_eeg']) != 7680:
print(len(row['segment_eeg']))
sample = np.append(sample, row['segment_eeg'])
X.append(sample)
# Convert the label from boolean to 0 or 1
y.append(int(row['segment_label']))
return X, y
Define KNN run. This is configurable to enable or disable different data channels so that we can study them individually or together:
N_NEIGHBORS = 20
def run_knn(samples, use_abp, use_ecg, use_eeg):
# Get samples
X,y = get_x_y(samples, use_abp, use_ecg, use_eeg)
# Split samples into train and val
knn_X_train, knn_X_test, knn_y_train, knn_y_test = train_test_split(X, y, test_size=0.2, random_state=RANDOM_SEED)
# Normalize the data
scaler = StandardScaler()
scaler.fit(knn_X_train)
knn_X_train = scaler.transform(knn_X_train)
knn_X_test = scaler.transform(knn_X_test)
# Initialize the KNN classifier
knn = KNeighborsClassifier(n_neighbors=N_NEIGHBORS)
# Train the KNN classifier
knn.fit(knn_X_train, knn_y_train)
# Make predictions on the test set
knn_y_pred = knn.predict(knn_X_test)
# Evaluate the KNN classifier
print(f"ABP: {use_abp}, ECG: {use_ecg}, EEG: {use_eeg}")
print(f"Confusion matrix:\n{confusion_matrix(knn_y_test, knn_y_pred)}")
print(f"Classification report:\n{classification_report(knn_y_test, knn_y_pred)}")
Study each waveform independently, then ABP+EEG (which had best results in paper), and ABP+ECG+EEG:
run_knn(samples_balanced, use_abp=True, use_ecg=False, use_eeg=False)
run_knn(samples_balanced, use_abp=False, use_ecg=True, use_eeg=False)
run_knn(samples_balanced, use_abp=False, use_ecg=False, use_eeg=True)
run_knn(samples_balanced, use_abp=True, use_ecg=False, use_eeg=True)
run_knn(samples_balanced, use_abp=True, use_ecg=True, use_eeg=True)
ABP: True, ECG: False, EEG: False
Confusion matrix:
[[48 6]
[16 30]]
Classification report:
precision recall f1-score support
0 0.75 0.89 0.81 54
1 0.83 0.65 0.73 46
accuracy 0.78 100
macro avg 0.79 0.77 0.77 100
weighted avg 0.79 0.78 0.78 100
ABP: False, ECG: True, EEG: False
Confusion matrix:
[[32 22]
[21 25]]
Classification report:
precision recall f1-score support
0 0.60 0.59 0.60 54
1 0.53 0.54 0.54 46
accuracy 0.57 100
macro avg 0.57 0.57 0.57 100
weighted avg 0.57 0.57 0.57 100
ABP: False, ECG: False, EEG: True
Confusion matrix:
[[ 2 52]
[ 0 46]]
Classification report:
precision recall f1-score support
0 1.00 0.04 0.07 54
1 0.47 1.00 0.64 46
accuracy 0.48 100
macro avg 0.73 0.52 0.36 100
weighted avg 0.76 0.48 0.33 100
ABP: True, ECG: False, EEG: True
Confusion matrix:
[[42 12]
[ 7 39]]
Classification report:
precision recall f1-score support
0 0.86 0.78 0.82 54
1 0.76 0.85 0.80 46
accuracy 0.81 100
macro avg 0.81 0.81 0.81 100
weighted avg 0.81 0.81 0.81 100
ABP: True, ECG: True, EEG: True
Confusion matrix:
[[39 15]
[ 6 40]]
Classification report:
precision recall f1-score support
0 0.87 0.72 0.79 54
1 0.73 0.87 0.79 46
accuracy 0.79 100
macro avg 0.80 0.80 0.79 100
weighted avg 0.80 0.79 0.79 100
Based on the data above, the ABP data alone is strongly predictive based on the macro average F1-score of 0.90. The ECG and EEG data are weakly predictive with F1 scores of 0.33 and 0.64, respectively. The ABP+EEG data is also strongly predictive with an F1 score of 0.88, and ABP+ECG+EEG data somewhat predictive with an F1 score of 0.79.
Models based on ABP data alone, or ABP+EEG data are expected to train easily with good performance. The other signals appear to mostly add noise and are not strongly predictive. This agrees with the results from the paper.
Define t-SNE run. This is configurable to enable or disable different data channels so that we can study them individually or together:
def run_tsne(samples, use_abp, use_ecg, use_eeg):
# Get samples
X,y = get_x_y(samples, use_abp, use_ecg, use_eeg)
# Convert X and y to numpy arrays
X = np.array(X)
y = np.array(y)
# Run t-SNE on the samples
tsne = TSNE(n_components=len(np.unique(y)), random_state=RANDOM_SEED)
X_tsne = tsne.fit_transform(X)
# Create a scatter plot of the t-SNE representation
plt.figure(figsize=(16, 9))
plt.title(f"use_abp={use_abp}, use_ecg={use_ecg}, use_eeg={use_eeg}")
for i, label in enumerate(set(y)):
plt.scatter(X_tsne[y == label, 0], X_tsne[y == label, 1], label=label)
plt.legend()
plt.show()
Study each waveform independently, then ABP+EEG (which had best results in paper), and ABP+ECG+EEG:
run_tsne(samples_balanced, use_abp=True, use_ecg=False, use_eeg=False)
run_tsne(samples_balanced, use_abp=False, use_ecg=True, use_eeg=False)
run_tsne(samples_balanced, use_abp=False, use_ecg=False, use_eeg=True)
run_tsne(samples_balanced, use_abp=True, use_ecg=False, use_eeg=True)
run_tsne(samples_balanced, use_abp=True, use_ecg=True, use_eeg=True)
Based on the plots above, it appears that ABP alone, ABP+EEG and ABP+ECG+EEG are somewhat separable, though with outliers, and should be trainable by our model. The ECG and EEG data are not easily separable from the other data. This agrees with the results from the paper.
# cleanup
del samples_balanced
The model implementation is based on the CNN architecture described in Jo Y-Y et al. (2022). It is designed to handle 1, 2, or 3 signal categories simultaneously, allowing for flexible model configurations based on different combinations of physiological signals:
The architecture, as depicted in Figure 2 from the original paper, utilizes a ResNet-based approach tailored for time-series data from different physiological signals. The model architecture is adapted to handle varying input signal frequencies, with specific hyperparameters for each signal type, particularly EEG, due to its distinct characteristics compared to ABP and ECG. A diagram of the model architecture is shown below:
Each input signal is processed through a sequence of 12 7-layer residual blocks, followed by a flattening process and a linear transformation to produce a 32-dimensional feature vector per signal type. These vectors are then concatenated (if multiple signals are used) and passed through two additional linear layers to produce a single output vector, representing the IOH index. A threshold is determined experimentally in order to minimize the differene between the sensitivity and specificity and is applied to this index to perform binary classification for predicting IOH events.
The hyperparameters for the residual blocks are specified in Supplemental Table 1 from the original paper and vary for different signal type.
A forward pass through the model passes through 85 layers before concatenation, followed by two more linear layers and finally a sigmoid activation layer to produce the prediction measure.
Each residual block consists of the following seven layers:
Skip connections are included to aid in gradient flow during training, with optional 1D convolution in the skip connection to align dimensions.
The hyperparameters are detailed in Supplemental Table 1 of the original paper. A screenshot of these hyperparameters is provided for reference below:

Note: Please be aware of a transcription error in the original paper's Supplemental Table 1 for the ECG+ABP configuration in Residual Blocks 11 and 12, where the output size should be 469 6 instead of the reported 496 6.
Our model uses binary cross entropy as the loss function and Adam as the optimizer, consistent with the original study. The learning rate is set at 0.0001, and training is configured to run for up to 100 epochs, with early stopping implemented if no improvement in loss is observed over five consecutive epochs.
# First define the residual block which is reused 12x for each data track for each sample.
# Second define the primary model.
class ResidualBlock(nn.Module):
def __init__(self, in_features: int, out_features: int, in_channels: int, out_channels: int, kernel_size: int, stride: int = 1, size_down: bool = False, ignoreSkipConnection: bool = False) -> None:
super(ResidualBlock, self).__init__()
self.ignoreSkipConnection = ignoreSkipConnection
# calculate the appropriate padding required to ensure expected sequence lengths out of each residual block
padding = int((((stride-1)*in_features)-stride+kernel_size)/2)
self.size_down = size_down
self.bn1 = nn.BatchNorm1d(in_channels)
self.relu = nn.ReLU()
self.dropout = nn.Dropout(0.5)
self.conv1 = nn.Conv1d(in_channels, out_channels, kernel_size=kernel_size, stride=1, padding=padding, bias=False)
self.bn2 = nn.BatchNorm1d(out_channels)
self.conv2 = nn.Conv1d(out_channels, out_channels, kernel_size=kernel_size, stride=1, padding=padding, bias=False)
self.residualConv = nn.Conv1d(in_channels, out_channels, kernel_size=kernel_size, stride=1, padding=padding, bias=False)
# unclear where in sequence this should take place. Size down expressed in Supplemental table S1
if self.size_down:
pool_padding = (1 if (in_features % 2 > 0) else 0)
self.downsample = nn.MaxPool1d(kernel_size=2, stride=2, padding = pool_padding)
def forward(self, x: torch.Tensor) -> torch.Tensor:
identity = x
out = self.bn1(x)
out = self.relu(out)
out = self.dropout(out)
out = self.conv1(out)
if self.size_down:
out = self.downsample(out)
out = self.bn2(out)
out = self.relu(out)
out = self.conv2(out)
if not self.ignoreSkipConnection:
if out.shape != identity.shape:
# run the residual through a convolution when necessary
identity = self.residualConv(identity)
outlen = np.prod(out.shape)
idlen = np.prod(identity.shape)
# downsample when required
if idlen > outlen:
identity = self.downsample(identity)
# match dimensions
identity = identity.reshape(out.shape)
# add the residual
out += identity
return out
class HypotensionCNN(nn.Module):
def __init__(self, useAbp: bool = True, useEeg: bool = False, useEcg: bool = False, device: str = "cpu", nResiduals: int = 12, ignoreSkipConnection: bool = False, useSigmoid: bool = True) -> None:
assert useAbp or useEeg or useEcg, "At least one data track must be used"
assert nResiduals > 0 and nResiduals <= 12, "Number of residual blocks must be between 1 and 12"
super(HypotensionCNN, self).__init__()
self.device = device
self.useAbp = useAbp
self.useEeg = useEeg
self.useEcg = useEcg
self.nResiduals = nResiduals
self.useSigmoid = useSigmoid
# Size of the concatenated output from the residual blocks
concatSize = 0
if useAbp:
self.abpBlocks = []
self.abpMultipliers = [1, 2, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6]
self.abpSizes = [30000, 15000, 15000, 7500, 7500, 3750, 3750, 1875, 1875, 938, 938, 469, 469]
for i in range(self.nResiduals):
downsample = i % 2 == 0
self.abpBlocks.append(ResidualBlock(self.abpSizes[i], self.abpSizes[i+1], self.abpMultipliers[i], self.abpMultipliers[i+1], 15 if i < 6 else 7, 1, downsample, ignoreSkipConnection))
self.abpResiduals = nn.Sequential(*self.abpBlocks)
self.abpFc = nn.Linear(self.abpMultipliers[self.nResiduals] * self.abpSizes[self.nResiduals], 32)
concatSize += 32
if useEcg:
self.ecgBlocks = []
self.ecgMultipliers = [1, 2, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6]
self.ecgSizes = [30000, 15000, 15000, 7500, 7500, 3750, 3750, 1875, 1875, 938, 938, 469, 469]
for i in range(self.nResiduals):
downsample = i % 2 == 0
self.ecgBlocks.append(ResidualBlock(self.ecgSizes[i], self.ecgSizes[i+1], self.ecgMultipliers[i], self.ecgMultipliers[i+1], 15 if i < 6 else 7, 1, downsample, ignoreSkipConnection))
self.ecgResiduals = nn.Sequential(*self.ecgBlocks)
self.ecgFc = nn.Linear(self.ecgMultipliers[self.nResiduals] * self.ecgSizes[self.nResiduals], 32)
concatSize += 32
if useEeg:
self.eegBlocks = []
self.eegMultipliers = [1, 2, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6]
self.eegSizes = [7680, 3840, 3840, 1920, 1920, 960, 960, 480, 480, 240, 240, 120, 120]
for i in range(self.nResiduals):
downsample = i % 2 == 0
self.eegBlocks.append(ResidualBlock(self.eegSizes[i], self.eegSizes[i+1], self.eegMultipliers[i], self.eegMultipliers[i+1], 7 if i < 6 else 3, 1, downsample, ignoreSkipConnection))
self.eegResiduals = nn.Sequential(*self.eegBlocks)
self.eegFc = nn.Linear(self.eegMultipliers[self.nResiduals] * self.eegSizes[self.nResiduals], 32)
concatSize += 32
self.fullLinear1 = nn.Linear(concatSize, 16)
self.fullLinear2 = nn.Linear(16, 1)
self.sigmoid = nn.Sigmoid()
def forward(self, abp: torch.Tensor, eeg: torch.Tensor, ecg: torch.Tensor) -> torch.Tensor:
batchSize = len(abp)
# conditionally operate ABP, EEG, and ECG networks
tensors = []
if self.useAbp:
self.abpResiduals.to(self.device)
abp = self.abpResiduals(abp)
totalLen = np.prod(abp.shape)
abp = torch.reshape(abp, (batchSize, int(totalLen / batchSize)))
abp = self.abpFc(abp)
tensors.append(abp)
if self.useEeg:
self.eegResiduals.to(self.device)
eeg = self.eegResiduals(eeg)
totalLen = np.prod(eeg.shape)
eeg = torch.reshape(eeg, (batchSize, int(totalLen / batchSize)))
eeg = self.eegFc(eeg)
tensors.append(eeg)
if self.useEcg:
self.ecgResiduals.to(self.device)
ecg = self.ecgResiduals(ecg)
totalLen = np.prod(ecg.shape)
ecg = torch.reshape(ecg, (batchSize, int(totalLen / batchSize)))
ecg = self.ecgFc(ecg)
tensors.append(ecg)
# concatenate the tensors along dimension 1 if there's more than one, otherwise use the single tensor
merged = torch.cat(tensors, dim=1) if len(tensors) > 1 else tensors[0]
totalLen = np.prod(merged.shape)
merged = torch.reshape(merged, (batchSize, int(totalLen / batchSize)))
out = self.fullLinear1(merged)
out = self.fullLinear2(out)
if self.useSigmoid:
out = self.sigmoid(out)
# We should not be seeing NaNs! If we are, there is a problem upstream.
#out = torch.nan_to_num(out)
return out
As discussed earlier, our model uses binary cross entropy as the loss function and Adam as the optimizer, consistent with the original study. The learning rate is set at 0.0001, and training is configured to run for up to 100 epochs, with early stopping implemented if no improvement in loss is observed over five consecutive epochs.
def train_model_one_iter(model, device, loss_func, optimizer, train_loader):
model.train()
train_losses = []
for abp, ecg, eeg, label in tqdm(train_loader):
batch = len(abp)
abp = abp.reshape(batch, 1, -1).type(torch.FloatTensor).to(device)
ecg = ecg.reshape(batch, 1, -1).type(torch.FloatTensor).to(device)
eeg = eeg.reshape(batch, 1, -1).type(torch.FloatTensor).to(device)
label = label.type(torch.float).reshape(batch, 1).to(device)
optimizer.zero_grad()
mdl = model(abp, eeg, ecg)
loss = loss_func(torch.nan_to_num(mdl), label)
loss.backward()
optimizer.step()
train_losses.append(loss.cpu().data.numpy())
return np.mean(train_losses)
def evaluate_model(model, loss_func, val_loader):
model.eval()
val_losses = []
for abp, ecg, eeg, label in tqdm(val_loader):
batch = len(abp)
abp = abp.reshape(batch, 1, -1).type(torch.FloatTensor).to(device)
ecg = ecg.reshape(batch, 1, -1).type(torch.FloatTensor).to(device)
eeg = eeg.reshape(batch, 1, -1).type(torch.FloatTensor).to(device)
label = label.type(torch.float).reshape(batch, 1).to(device)
mdl = model(abp, eeg, ecg)
loss = loss_func(torch.nan_to_num(mdl), label)
val_losses.append(loss.cpu().data.numpy())
return np.mean(val_losses)
def plot_losses(train_losses, val_losses, best_epoch, experimentName):
print()
print(f'Plot Validation and Loss Values from Training')
print(f' Epoch with best Validation Loss: {best_epoch:3}, {val_losses[best_epoch]:.4}')
# Create x-axis values for epochs
epochs = range(0, len(train_losses))
plt.figure(figsize=(16, 9))
# Plot the training and validation losses
plt.plot(epochs, train_losses, 'b', label='Training Loss')
plt.plot(epochs, val_losses, 'r', label='Validation Loss')
# Add a vertical bar at the best_epoch
plt.axvline(x=best_epoch, color='g', linestyle='--', label='Best Epoch')
# Shade everything to the right of the best_epoch a light red
plt.axvspan(best_epoch, max(epochs), facecolor='r', alpha=0.1)
# Add labels and title
plt.xlabel('Epochs')
plt.ylabel('Loss')
plt.title(experimentName)
# Add legend
plt.legend(loc='upper right')
# Save plot to disk
plt.savefig(os.path.join(VITAL_RUNS, f'{experimentName}_losses.png'))
# Show the plot
plt.show()
def eval_model(model, device, dataloader, loss_func, print_detailed: bool = False):
model.eval()
model = model.to(device)
total_loss = 0
all_predictions = []
all_labels = []
with torch.no_grad():
for abp, ecg, eeg, label in tqdm(dataloader):
batch = len(abp)
abp = torch.nan_to_num(abp.reshape(batch, 1, -1)).type(torch.FloatTensor).to(device)
ecg = torch.nan_to_num(ecg.reshape(batch, 1, -1)).type(torch.FloatTensor).to(device)
eeg = torch.nan_to_num(eeg.reshape(batch, 1, -1)).type(torch.FloatTensor).to(device)
label = label.type(torch.float).reshape(batch, 1).to(device)
pred = model(abp, eeg, ecg)
loss = loss_func(pred, label)
total_loss += loss.item()
all_predictions.append(pred.detach().cpu().numpy())
all_labels.append(label.detach().cpu().numpy())
# Flatten the lists
all_predictions = np.concatenate(all_predictions).flatten()
all_labels = np.concatenate(all_labels).flatten()
# Calculate AUROC and AUPRC
# y_true, y_pred
auroc = roc_auc_score(all_labels, all_predictions)
precision, recall, _ = precision_recall_curve(all_labels, all_predictions)
auprc = auc(recall, precision)
# Determine the optimal threshold, which is argmin(abs(sensitivity - specificity)) per the paper
thresholds = np.linspace(0, 1, 101) # 0 to 1 in 0.01 steps
min_diff = float('inf')
optimal_sensitivity = None
optimal_specificity = None
optimal_threshold = None
for threshold in thresholds:
all_predictions_binary = (all_predictions > threshold).astype(int)
tn, fp, fn, tp = confusion_matrix(all_labels, all_predictions_binary).ravel()
sensitivity = tp / (tp + fn)
specificity = tn / (tn + fp)
diff = abs(sensitivity - specificity)
if diff < min_diff:
min_diff = diff
optimal_threshold = threshold
optimal_sensitivity = sensitivity
optimal_specificity = specificity
avg_loss = total_loss / len(dataloader)
# accuracy
predictions_binary = (all_predictions > optimal_threshold).astype(int)
accuracy = np.mean(predictions_binary == all_labels)
if print_detailed:
print(f"Predictions: {all_predictions}")
print(f"Labels: {all_labels}")
print(f"Loss: {avg_loss}")
print(f"AUROC: {auroc}")
print(f"AUPRC: {auprc}")
print(f"Sensitivity: {optimal_sensitivity}")
print(f"Specificity: {optimal_specificity}")
print(f"Threshold: {optimal_threshold}")
print(f"Accuracy: {accuracy}")
return all_predictions, all_labels, avg_loss, auroc, auprc, \
optimal_sensitivity, optimal_specificity, optimal_threshold, accuracy
def print_all_evals(model, models, device, val_loader, test_loader, loss_func, print_detailed: bool = False):
print()
print(f'Generate AUROC/AUPRC for Each Intermediate Model')
print()
val_aurocs = []
val_auprcs = []
val_accs = []
test_aurocs = []
test_auprcs = []
test_accs = []
for mod in models:
model.load_state_dict(torch.load(mod))
#model.train(False)
model.eval()
print(f'Intermediate Model:')
print(f' {mod}')
# validation loop
print("AUROC/AUPRC on Validation Data")
all_predictions, all_labels, avg_loss, valid_auroc, valid_auprc, \
optimal_sensitivity, optimal_specificity, optimal_threshold, valid_accuracy = \
eval_model(model, device, val_loader, loss_func, print_detailed)
val_aurocs.append(valid_auroc)
val_auprcs.append(valid_auprc)
val_accs.append(valid_accuracy)
print()
# test loop
print("AUROC/AUPRC on Test Data")
all_predictions, all_labels, avg_loss, test_auroc, test_auprc, \
optimal_sensitivity, optimal_specificity, optimal_threshold, test_accuracy = \
eval_model(model, device, test_loader, loss_func, print_detailed)
test_aurocs.append(test_auroc)
test_auprcs.append(test_auprc)
test_accs.append(test_accuracy)
print()
return val_aurocs, val_auprcs, val_accs, test_aurocs, test_auprcs, test_accs
def plot_auroc_auprc(val_losses, val_aurocs, val_auprcs, val_accs,
test_aurocs, test_auprcs, test_accs, all_models, best_epoch, experimentName):
print()
print(f'Plot AUROC/AUPRC for Each Intermediate Model')
# Create x-axis values for epochs
epochs = range(0, len(val_aurocs))
# Find model with highest AUROC
np_test_aurocs = np.array(test_aurocs)
test_auroc_idx = np.argmax(np_test_aurocs)
test_accs_idx = np.argmax(test_accs)
print(f' Epoch with best Validation Loss: {best_epoch:3}, {val_losses[best_epoch]:.4}')
print(f' Epoch with best model Test AUROC: {test_auroc_idx:3}, {np_test_aurocs[test_auroc_idx]:.4}')
print(f' Epoch with best model Test Accuracy: {test_accs_idx:3}, {test_accs[test_accs_idx]:.4}')
#print(f'Best Model on Validation Loss:')
#print(f' {all_models[test_auroc_idx]}')
#print(f'Best Model on Test AUROC:')
#print(f' {all_models[best_epoch]}')
print()
plt.figure(figsize=(16, 9))
# Plots
plt.plot(epochs, val_aurocs, 'C0', label='AUROC - Validation')
plt.plot(epochs, test_aurocs, 'C1', label='AUROC - Test')
plt.plot(epochs, val_auprcs, 'C2', label='AUPRC - Validation')
plt.plot(epochs, test_auprcs, 'C3', label='AUPRC - Test')
plt.plot(epochs, val_accs, 'C4', label='Accuracy - Validation')
plt.plot(epochs, test_accs, 'C5', label='Accuracy - Test')
# Add vertical bars
plt.axvline(x=best_epoch, color='g', linestyle='--', label='Best Epoch - Validation Loss')
plt.axvline(x=test_auroc_idx, color='maroon', linestyle='--', label='Best Epoch - Test AUROC')
plt.axvline(x=test_accs_idx, color='violet', linestyle='--', label='Best Epoch - Test Accuracy')
# Shade everything to the right of the best_model a light red
plt.axvspan(test_auroc_idx, max(epochs), facecolor='r', alpha=0.1)
# Add labels and title
plt.xlabel('Epochs')
plt.ylabel('AUROC / AUPRC')
plt.title('Validation and Test AUROC and AUPRC by Model Iteration Across Training')
# Add legend
plt.legend(loc='right')
# Show the plot
plt.show()
# Save plot to disk
plt.savefig(os.path.join(VITAL_RUNS, f'{experimentName}_all_stats.png'))
return np_test_aurocs, test_auroc_idx
def run_experiment(
experimentNamePrefix: str = None,
useAbp: bool = True,
useEeg: bool = False,
useEcg: bool = False,
nResiduals: int = 12,
skip_connection: bool = False,
batch_size: int = 64,
learning_rate: float = 1e-4,
weight_decay: float = 0.0,
balance_labels: bool = False,
pos_weight: float = None,
max_epochs: int = 100,
patience: int = 25,
device: str = "cpu"
):
reset_random_state()
time_start = timer()
experimentName = ""
experimentOptions = [experimentNamePrefix, 'ABP', 'EEG', 'ECG', 'SKIPCONNECTION']
experimentValues = [experimentNamePrefix is not None, useAbp, useEeg, useEcg, skip_connection]
experimentFlags = [name for name, value in zip(experimentOptions, experimentValues) if value]
if experimentFlags:
experimentName = "_".join(experimentFlags)
experimentName = f"{experimentName}_{nResiduals}_RESIDUAL_BLOCKS_{batch_size}_BATCH_SIZE_{learning_rate:.0e}_LEARNING_RATE"
if weight_decay is not None and weight_decay != 0.0:
experimentName = f"{experimentName}_{weight_decay:.0e}_WEIGHT_DECAY"
predictionWindow = 'ALL' if PREDICTION_WINDOW == 'ALL' else f'{PREDICTION_WINDOW:03}'
experimentName = f"{experimentName}_{predictionWindow}_MINS"
maxCases = '_ALL' if MAX_CASES is None else f'{MAX_CASES:04}'
experimentName = f"{experimentName}_{maxCases}_MAX_CASES"
# Add unique uuid8 suffix to experiment name
experimentName = f"{experimentName}_{uuid.uuid4().hex[:8]}"
# default label split based on empirical data
my_pos_weight = 4.0
if balance_labels and pos_weight is not None:
my_pos_weight = pos_weight
# Fork stdout to file and console
with ForkedStdout(os.path.join(VITAL_RUNS, f'{experimentName}.log')):
print(f"Experiment Setup")
print(f' name: {experimentName}')
print(f' prediction_window: {predictionWindow}')
print(f' max_cases: {maxCases}')
print(f' use_abp: {useAbp}')
print(f' use_eeg: {useEeg}')
print(f' use_ecg: {useEcg}')
print(f' n_residuals: {nResiduals}')
print(f' skip_connection: {skip_connection}')
print(f' batch_size: {batch_size}')
print(f' learning_rate: {learning_rate}')
print(f' weight_decay: {weight_decay}')
print(f' balance_labels: {balance_labels}')
if balance_labels:
print(f' pos_weight: {my_pos_weight}')
print(f' max_epochs: {max_epochs}')
print(f' patience: {patience}')
print(f' device: {device}')
print()
train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=batch_size, shuffle=True)
val_loader = torch.utils.data.DataLoader(val_dataset, batch_size=batch_size, shuffle=True)
test_loader = torch.utils.data.DataLoader(test_dataset, batch_size=batch_size, shuffle=False)
# Disable final sigmoid activation for BCEWithLogitsLoss
model = HypotensionCNN(useAbp, useEeg, useEcg, device, nResiduals, skip_connection, useSigmoid=(not balance_labels))
model = model.to(device)
if balance_labels:
# Only the weight for the positive class
loss_func = nn.BCEWithLogitsLoss(pos_weight=torch.tensor([my_pos_weight]).to(device))
else:
loss_func = nn.BCELoss()
optimizer = torch.optim.Adam(model.parameters(), lr=learning_rate, weight_decay=weight_decay)
print(f'Model Architecture')
print(model)
print()
print(f'Training Loop')
# Training loop
best_epoch = 0
train_losses = []
val_losses = []
best_loss = float('inf')
no_improve_epochs = 0
model_path = os.path.join(VITAL_MODELS, f"{experimentName}.model")
all_models = []
for i in range(max_epochs):
# Train the model and get the training loss
train_loss = train_model_one_iter(model, device, loss_func, optimizer, train_loader)
train_losses.append(train_loss)
# Calculate validate loss
val_loss = evaluate_model(model, loss_func, val_loader)
val_losses.append(val_loss)
print(f"[{datetime.now()}] Completed epoch {i} with training loss {train_loss:.8f}, validation loss {val_loss:.8f}")
# Save all intermediary models.
tmp_model_path = os.path.join(VITAL_MODELS, f"{experimentName}_{i:04d}.model")
torch.save(model.state_dict(), tmp_model_path)
all_models.append(tmp_model_path)
# Check if validation loss has improved
if val_loss < best_loss:
best_epoch = i
best_loss = val_loss
no_improve_epochs = 0
torch.save(model.state_dict(), model_path)
print(f"Validation loss improved to {val_loss:.8f}. Model saved.")
else:
no_improve_epochs += 1
print(f"No improvement in validation loss. {no_improve_epochs} epochs without improvement.")
# exit early if no improvement in loss over last 'patience' epochs
if no_improve_epochs >= patience:
print("Early stopping due to no improvement in validation loss.")
break
# Load best model from disk
#print()
#if os.path.exists(model_path):
# model.load_state_dict(torch.load(model_path))
# print(f"Loaded best model from disk from epoch {best_epoch}.")
#else:
# print("No saved model found for f{experimentName}.")
#model.train(False)
# Plot the training and validation losses across all training epochs.
plot_losses(train_losses, val_losses, best_epoch, experimentName)
# Generate AUROC/AUPRC for each intermediate model generated across training epochs.
val_aurocs, val_auprcs, val_accs, test_aurocs, test_auprcs, test_accs = \
print_all_evals(model, all_models, device, val_loader, test_loader, loss_func, print_detailed=False)
# Find model with highest AUROC. Plot AUROC/AUPRC across all epochs.
np_test_aurocs, test_auroc_idx = plot_auroc_auprc(val_losses, val_aurocs, val_auprcs, val_accs, \
test_aurocs, test_auprcs, test_accs, all_models, best_epoch, experimentName)
## AUROC / AUPRC - Model with Best Validation Loss
best_model_val_loss = all_models[best_epoch]
print(f'AUROC/AUPRC Plots - Best Model Based on Validation Loss')
print(f' Epoch with best Validation Loss: {best_epoch:3}, {val_losses[best_epoch]:.4}')
print(f' Best Model Based on Validation Loss:')
print(f' {best_model_val_loss}')
print()
print(f'Generate Stats Based on Test Data')
model.load_state_dict(torch.load(best_model_val_loss))
#model.train(False)
model.eval()
best_model_val_test_predictions, best_model_val_test_labels, test_loss, \
best_model_val_test_auroc, best_model_val_test_auprc, test_sensitivity, test_specificity, \
best_model_val_test_threshold, best_model_val_accuracy = \
eval_model(model, device, test_loader, loss_func, print_detailed=False)
# y_test, y_pred
display = RocCurveDisplay.from_predictions(
best_model_val_test_labels,
best_model_val_test_predictions,
plot_chance_level=True
)
# Save plot to disk and show
plt.savefig(os.path.join(VITAL_RUNS, f'{experimentName}_val_auroc.png'))
plt.show()
print(f'best_model_val_test_auroc: {best_model_val_test_auroc}')
best_model_val_test_predictions_binary = \
(best_model_val_test_predictions > best_model_val_test_threshold).astype(int)
# y_test, y_pred
display = PrecisionRecallDisplay.from_predictions(
best_model_val_test_labels,
best_model_val_test_predictions_binary,
plot_chance_level=True
)
# Save plot to disk and show
plt.savefig(os.path.join(VITAL_RUNS, f'{experimentName}_val_auprc.png'))
plt.show()
print(f'best_model_val_test_auprc: {best_model_val_test_auprc}')
print()
## AUROC / AUPRC - Model with Best AUROC
# Find model with highest AUROC
best_model_auroc = all_models[test_auroc_idx]
print(f'AUROC/AUPRC Plots - Best Model Based on Model AUROC')
print(f' Epoch with best model Test AUROC: {test_auroc_idx:3}, {np_test_aurocs[test_auroc_idx]:.4}')
print(f' Best Model Based on Model AUROC:')
print(f' {best_model_auroc}')
print()
print(f'Generate Stats Based on Test Data')
model.load_state_dict(torch.load(best_model_auroc))
#model.train(False)
model.eval()
best_model_auroc_test_predictions, best_model_auroc_test_labels, test_loss, \
best_model_auroc_test_auroc, best_model_auroc_test_auprc, test_sensitivity, test_specificity, \
best_model_auroc_test_threshold, best_model_auroc_accuracy = \
eval_model(model, device, test_loader, loss_func, print_detailed=False)
# y_test, y_pred
display = RocCurveDisplay.from_predictions(
best_model_auroc_test_labels,
best_model_auroc_test_predictions,
plot_chance_level=True
)
# Save plot to disk and show
plt.savefig(os.path.join(VITAL_RUNS, f'{experimentName}_auroc_auroc.png'))
plt.show()
print(f'best_model_auroc_test_auroc: {best_model_auroc_test_auroc}')
best_model_auroc_test_predictions_binary = \
(best_model_auroc_test_predictions > best_model_auroc_test_threshold).astype(int)
# y_test, y_pred
display = PrecisionRecallDisplay.from_predictions(
best_model_auroc_test_labels,
best_model_auroc_test_predictions_binary,
plot_chance_level=True
)
# Save plot to disk and show
plt.savefig(os.path.join(VITAL_RUNS, f'{experimentName}_auroc_auprc.png'))
plt.show()
print(f"best_model_auroc_test_auprc: {best_model_auroc_test_auprc}")
print()
time_delta = np.round(timer() - time_start, 3)
print(f'Total Processing Time: {time_delta:.4f} sec')
print('Time to experiment!')
Time to experiment!
MULTI_RUN = True
RUN_ME = True
if RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=True,
useEcg=True,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: True
use_ecg: True
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(ecgResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(ecgFc): Linear(in_features=2814, out_features=32, bias=True)
(eegResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
)
(eegFc): Linear(in_features=720, out_features=32, bias=True)
(fullLinear1): Linear(in_features=96, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:03<00:00, 2.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.38it/s]
[2024-05-02 23:31:09.072831] Completed epoch 0 with training loss 0.47481909, validation loss 0.60535330 Validation loss improved to 0.60535330. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:02<00:00, 2.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.67it/s]
[2024-05-02 23:32:18.369072] Completed epoch 1 with training loss 0.43297315, validation loss 0.65022475 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:01<00:00, 3.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
[2024-05-02 23:33:26.885763] Completed epoch 2 with training loss 0.42952132, validation loss 0.57201713 Validation loss improved to 0.57201713. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:03<00:00, 2.89it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.35it/s]
[2024-05-02 23:34:38.054872] Completed epoch 3 with training loss 0.42042181, validation loss 0.56778467 Validation loss improved to 0.56778467. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
[2024-05-02 23:35:45.640670] Completed epoch 4 with training loss 0.41635305, validation loss 0.66481251 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:01<00:00, 3.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.60it/s]
[2024-05-02 23:36:53.970329] Completed epoch 5 with training loss 0.41293740, validation loss 0.57500648 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:01<00:00, 3.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.58it/s]
[2024-05-02 23:38:02.150152] Completed epoch 6 with training loss 0.40537101, validation loss 0.57109928 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.63it/s]
[2024-05-02 23:39:09.762936] Completed epoch 7 with training loss 0.40467843, validation loss 0.59800386 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.65it/s]
[2024-05-02 23:40:17.138292] Completed epoch 8 with training loss 0.40542811, validation loss 0.57643890 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.64it/s]
[2024-05-02 23:41:24.763250] Completed epoch 9 with training loss 0.39901790, validation loss 0.62023044 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.59it/s]
[2024-05-02 23:42:32.690440] Completed epoch 10 with training loss 0.39567798, validation loss 0.59012532 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-02 23:43:40.616320] Completed epoch 11 with training loss 0.39088970, validation loss 0.60246170 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:01<00:00, 2.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-02 23:44:49.309998] Completed epoch 12 with training loss 0.39158157, validation loss 0.55773354 Validation loss improved to 0.55773354. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:01<00:00, 3.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-02 23:45:57.484032] Completed epoch 13 with training loss 0.38664550, validation loss 0.60039526 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.64it/s]
[2024-05-02 23:47:05.049489] Completed epoch 14 with training loss 0.38458440, validation loss 0.55703753 Validation loss improved to 0.55703753. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-02 23:48:13.050413] Completed epoch 15 with training loss 0.37509695, validation loss 0.63511789 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.64it/s]
[2024-05-02 23:49:20.986397] Completed epoch 16 with training loss 0.37293932, validation loss 0.57011026 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.60it/s]
[2024-05-02 23:50:28.956311] Completed epoch 17 with training loss 0.37224159, validation loss 0.54429889 Validation loss improved to 0.54429889. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-02 23:51:36.882530] Completed epoch 18 with training loss 0.36936954, validation loss 0.56282192 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.61it/s]
[2024-05-02 23:52:44.894509] Completed epoch 19 with training loss 0.36262685, validation loss 0.57045972 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-02 23:53:52.761859] Completed epoch 20 with training loss 0.36142203, validation loss 0.59218496 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.49it/s]
[2024-05-02 23:55:00.929812] Completed epoch 21 with training loss 0.35916677, validation loss 0.65198028 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.63it/s]
[2024-05-02 23:56:08.744206] Completed epoch 22 with training loss 0.35645643, validation loss 0.60547340 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.60it/s]
[2024-05-02 23:57:16.733103] Completed epoch 23 with training loss 0.35295868, validation loss 0.63072097 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.63it/s]
[2024-05-02 23:58:24.626772] Completed epoch 24 with training loss 0.34837863, validation loss 0.59863806 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.63it/s]
[2024-05-02 23:59:32.427011] Completed epoch 25 with training loss 0.34487155, validation loss 0.62431896 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.60it/s]
[2024-05-03 00:00:40.328898] Completed epoch 26 with training loss 0.34100905, validation loss 0.57189262 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.61it/s]
[2024-05-03 00:01:48.155430] Completed epoch 27 with training loss 0.34366468, validation loss 0.64870095 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-03 00:02:56.100725] Completed epoch 28 with training loss 0.33807331, validation loss 0.60556692 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-03 00:04:04.001905] Completed epoch 29 with training loss 0.33530027, validation loss 0.60582250 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.63it/s]
[2024-05-03 00:05:11.956821] Completed epoch 30 with training loss 0.32994184, validation loss 0.61924994 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.61it/s]
[2024-05-03 00:06:19.896956] Completed epoch 31 with training loss 0.32990560, validation loss 0.64434659 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.63it/s]
[2024-05-03 00:07:27.812455] Completed epoch 32 with training loss 0.32763043, validation loss 0.63745141 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.57it/s]
[2024-05-03 00:08:35.841874] Completed epoch 33 with training loss 0.32007957, validation loss 0.65961647 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-03 00:09:43.693368] Completed epoch 34 with training loss 0.32328573, validation loss 0.72489840 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.63it/s]
[2024-05-03 00:10:51.702483] Completed epoch 35 with training loss 0.31708381, validation loss 0.70516616 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-03 00:11:59.531775] Completed epoch 36 with training loss 0.31168833, validation loss 0.67210662 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:01<00:00, 3.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-03 00:13:07.605477] Completed epoch 37 with training loss 0.31048423, validation loss 0.69868982 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 17, 0.5443
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.31it/s]
Loss: 0.6068063611164689 AUROC: 0.8386605457864211 AUPRC: 0.6944629478928712 Sensitivity: 0.7681895093062606 Specificity: 0.7630098452883263 Threshold: 0.12 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:21<00:00, 4.40it/s]
Loss: 0.5702267741003344 AUROC: 0.829420414830706 AUPRC: 0.6769661800452601 Sensitivity: 0.7381864623243933 Specificity: 0.7733302836230558 Threshold: 0.12 Accuracy: 0.7640619737285281 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.52it/s]
Loss: 0.6492133103311062 AUROC: 0.8397933369982462 AUPRC: 0.6927660816109983 Sensitivity: 0.7715736040609137 Specificity: 0.7679324894514767 Threshold: 0.09 Accuracy: 0.7690014903129657 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.55it/s]
Loss: 0.6065289046495191 AUROC: 0.8322738219179524 AUPRC: 0.6797827493803628 Sensitivity: 0.7420178799489144 Specificity: 0.77516010978957 Threshold: 0.09 Accuracy: 0.7664196699225329 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.5726570980623364 AUROC: 0.8381869629058476 AUPRC: 0.6790673598782644 Sensitivity: 0.7749576988155669 Specificity: 0.7531645569620253 Threshold: 0.13 Accuracy: 0.7595628415300546 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 0.5336263287131504 AUROC: 0.8310841720036596 AUPRC: 0.6697017359232138 Sensitivity: 0.7618135376756067 Specificity: 0.755946935041171 Threshold: 0.13 Accuracy: 0.757494105759515 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.53it/s]
Loss: 0.5730926347896457 AUROC: 0.8351764988660189 AUPRC: 0.666613568282154 Sensitivity: 0.7428087986463621 Specificity: 0.7721518987341772 Threshold: 0.13 Accuracy: 0.7635370094386488 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 0.5347855552550285 AUROC: 0.8284354664946676 AUPRC: 0.6549186422100586 Sensitivity: 0.7624521072796935 Specificity: 0.7495425434583715 Threshold: 0.12 Accuracy: 0.7529471202425059 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.6681379871442914 AUROC: 0.834562506990702 AUPRC: 0.6666271073336981 Sensitivity: 0.7614213197969543 Specificity: 0.7566807313642757 Threshold: 0.07 Accuracy: 0.7580725285643318 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.6255476963455959 AUROC: 0.8270461540349068 AUPRC: 0.6497631497340256 Sensitivity: 0.7445721583652618 Specificity: 0.7628087831655993 Threshold: 0.07 Accuracy: 0.757999326372516 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.5788304703310132 AUROC: 0.8291305827449245 AUPRC: 0.6505235512083195 Sensitivity: 0.766497461928934 Specificity: 0.7426160337552743 Threshold: 0.12 Accuracy: 0.7496274217585693 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.56it/s]
Loss: 0.5409955930325293 AUROC: 0.8202372522694636 AUPRC: 0.6175566244136327 Sensitivity: 0.7503192848020435 Specificity: 0.7527447392497713 Threshold: 0.12 Accuracy: 0.7521050858875042 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.5662019839510322 AUROC: 0.8285487183514555 AUPRC: 0.6550608830152879 Sensitivity: 0.7529610829103215 Specificity: 0.7538677918424754 Threshold: 0.13 Accuracy: 0.7536015896671634 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 0.5357068421379212 AUROC: 0.8188536361076348 AUPRC: 0.6190797155114698 Sensitivity: 0.756066411238825 Specificity: 0.7406221408966148 Threshold: 0.12 Accuracy: 0.7446951835634894 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.48it/s]
Loss: 0.5949602937325835 AUROC: 0.827752670745667 AUPRC: 0.6504971740986674 Sensitivity: 0.7428087986463621 Specificity: 0.7573839662447257 Threshold: 0.11 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 0.5636371354902944 AUROC: 0.8175728454264277 AUPRC: 0.6089900941539816 Sensitivity: 0.7547892720306514 Specificity: 0.7419945105215004 Threshold: 0.1 Accuracy: 0.7453688110474908 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.56it/s]
Loss: 0.5709957033395767 AUROC: 0.8256084588089985 AUPRC: 0.6445164019812 Sensitivity: 0.739424703891709 Specificity: 0.7609001406469761 Threshold: 0.13 Accuracy: 0.754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.5441411565388402 AUROC: 0.8151243136691286 AUPRC: 0.6017718073026687 Sensitivity: 0.7388250319284803 Specificity: 0.7511436413540714 Threshold: 0.12 Accuracy: 0.7478949141124958 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.6171536790207028 AUROC: 0.8243971337526566 AUPRC: 0.644321909951918 Sensitivity: 0.7428087986463621 Specificity: 0.7559774964838256 Threshold: 0.1 Accuracy: 0.7521112767014406 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 0.5831253732083946 AUROC: 0.8140437697690751 AUPRC: 0.5976791330213114 Sensitivity: 0.7445721583652618 Specificity: 0.7381061299176578 Threshold: 0.09 Accuracy: 0.7398113843044796 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.5925626549869776 AUROC: 0.8216543987282277 AUPRC: 0.6433590979978145 Sensitivity: 0.7495769881556683 Specificity: 0.7468354430379747 Threshold: 0.12 Accuracy: 0.7476403378042722 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 0.5562994800588136 AUROC: 0.8099075271757229 AUPRC: 0.5932066371699509 Sensitivity: 0.7458492975734355 Specificity: 0.7339890210430009 Threshold: 0.11 Accuracy: 0.7371168743684743 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.56it/s]
Loss: 0.5933111440390348 AUROC: 0.8191496450508209 AUPRC: 0.6389152037370701 Sensitivity: 0.751269035532995 Specificity: 0.7383966244725738 Threshold: 0.11 Accuracy: 0.7421758569299552 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.55it/s]
Loss: 0.5663791467105189 AUROC: 0.8078694940168424 AUPRC: 0.5858697026368058 Sensitivity: 0.7209450830140486 Specificity: 0.7463403476669717 Threshold: 0.11 Accuracy: 0.7396429774334793 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.5542797362431884 AUROC: 0.8026718165830162 AUPRC: 0.5965134380764707 Sensitivity: 0.7309644670050761 Specificity: 0.7313642756680732 Threshold: 0.23 Accuracy: 0.7312468951813215 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.4915334338782936 AUROC: 0.7919297918134559 AUPRC: 0.5406325307127114 Sensitivity: 0.7196679438058748 Specificity: 0.7278133577310155 Threshold: 0.22 Accuracy: 0.7256652071404514 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.6069082142785192 AUROC: 0.8119959257593389 AUPRC: 0.6223603760917489 Sensitivity: 0.7326565143824028 Specificity: 0.7538677918424754 Threshold: 0.12 Accuracy: 0.7476403378042722 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.56it/s]
Loss: 0.5690863359999913 AUROC: 0.7997982049942803 AUPRC: 0.568435537571603 Sensitivity: 0.7203065134099617 Specificity: 0.734903934126258 Threshold: 0.11 Accuracy: 0.7310542270124621 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.5553839234635234 AUROC: 0.8055264028405454 AUPRC: 0.6116171514721386 Sensitivity: 0.7360406091370558 Specificity: 0.7419127988748242 Threshold: 0.16 Accuracy: 0.7401887729756582 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.51it/s]
Loss: 0.5268583254468057 AUROC: 0.7936508771130345 AUPRC: 0.5503160132772373 Sensitivity: 0.7164750957854407 Specificity: 0.7289569990850869 Threshold: 0.15 Accuracy: 0.7256652071404514 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.6349285123869777 AUROC: 0.8165389896739893 AUPRC: 0.6330040386626766 Sensitivity: 0.751269035532995 Specificity: 0.740506329113924 Threshold: 0.09 Accuracy: 0.7436661698956781 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 0.6045385158510619 AUROC: 0.8038430147028752 AUPRC: 0.5754407009719035 Sensitivity: 0.7452107279693486 Specificity: 0.7259835315645013 Threshold: 0.08 Accuracy: 0.7310542270124621 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.52it/s]
Loss: 0.574291069060564 AUROC: 0.8038890911730339 AUPRC: 0.6103987895529548 Sensitivity: 0.7377326565143824 Specificity: 0.7306610407876231 Threshold: 0.14 Accuracy: 0.7327372081470442 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 0.5428936511919062 AUROC: 0.7926121060644834 AUPRC: 0.5484276669572172 Sensitivity: 0.7222222222222222 Specificity: 0.7214089661482159 Threshold: 0.13 Accuracy: 0.7216234422364433 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.5467531820759177 AUROC: 0.7872184978141413 AUPRC: 0.5816599101395723 Sensitivity: 0.7157360406091371 Specificity: 0.7285513361462729 Threshold: 0.19 Accuracy: 0.7247888723298559 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 0.5182698178355412 AUROC: 0.7767853074072907 AUPRC: 0.520568938411387 Sensitivity: 0.7037037037037037 Specificity: 0.716376944190302 Threshold: 0.18 Accuracy: 0.7130346918154261 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.5701111080124974 AUROC: 0.8024814315053986 AUPRC: 0.607530912194093 Sensitivity: 0.7478849407783418 Specificity: 0.7327707454289732 Threshold: 0.14 Accuracy: 0.7372081470442127 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 0.5375698971491988 AUROC: 0.79480152929533 AUPRC: 0.5539175433662229 Sensitivity: 0.7318007662835249 Specificity: 0.7209515096065874 Threshold: 0.13 Accuracy: 0.7238127315594476 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.5697640180587769 AUROC: 0.7999612090404356 AUPRC: 0.6052724517929834 Sensitivity: 0.727580372250423 Specificity: 0.739803094233474 Threshold: 0.15 Accuracy: 0.736214605067064 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.57it/s]
Loss: 0.5371375431617101 AUROC: 0.7926660748359173 AUPRC: 0.5491588694764727 Sensitivity: 0.7145593869731801 Specificity: 0.7339890210430009 Threshold: 0.14 Accuracy: 0.7288649376894577 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.53it/s]
Loss: 0.583566059358418 AUROC: 0.7995185637349744 AUPRC: 0.6045454092022442 Sensitivity: 0.727580372250423 Specificity: 0.7383966244725738 Threshold: 0.13 Accuracy: 0.7352210630899155 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.5513020390143959 AUROC: 0.7929389859304362 AUPRC: 0.5548190044045058 Sensitivity: 0.7196679438058748 Specificity: 0.7307868252516011 Threshold: 0.12 Accuracy: 0.7278544964634557 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.6438830941915512 AUROC: 0.7969162377052886 AUPRC: 0.6017175266252766 Sensitivity: 0.7326565143824028 Specificity: 0.7285513361462729 Threshold: 0.09 Accuracy: 0.7297565822155986 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 0.6061908391214186 AUROC: 0.7907140703817046 AUPRC: 0.5555549041126624 Sensitivity: 0.7279693486590039 Specificity: 0.7161482159194876 Threshold: 0.08 Accuracy: 0.7192657460424385 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.53it/s]
Loss: 0.6054506842046976 AUROC: 0.789970752092451 AUPRC: 0.5918026211898156 Sensitivity: 0.7106598984771574 Specificity: 0.7341772151898734 Threshold: 0.12 Accuracy: 0.7272727272727273 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 0.5687462192389273 AUROC: 0.7852498600755533 AUPRC: 0.5403681058336371 Sensitivity: 0.7120051085568327 Specificity: 0.7232387923147301 Threshold: 0.11 Accuracy: 0.7202761872684406 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.52it/s]
Loss: 0.6256313696503639 AUROC: 0.7964628832392118 AUPRC: 0.5988439740988627 Sensitivity: 0.7225042301184433 Specificity: 0.7412095639943741 Threshold: 0.1 Accuracy: 0.7357178340784898 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.55it/s]
Loss: 0.5877696873359782 AUROC: 0.792888303484732 AUPRC: 0.5548422873496834 Sensitivity: 0.7203065134099617 Specificity: 0.7241537053979872 Threshold: 0.09 Accuracy: 0.7231391040754462 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.53it/s]
Loss: 0.5966295413672924 AUROC: 0.7951099592813915 AUPRC: 0.5946437203338238 Sensitivity: 0.7208121827411168 Specificity: 0.7383966244725738 Threshold: 0.12 Accuracy: 0.7332339791356185 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.5639482146950179 AUROC: 0.7911542919706153 AUPRC: 0.5506239113131235 Sensitivity: 0.7183908045977011 Specificity: 0.7312442817932296 Threshold: 0.11 Accuracy: 0.7278544964634557 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.6211370779201388 AUROC: 0.7834625572047663 AUPRC: 0.5776228576617177 Sensitivity: 0.7089678510998308 Specificity: 0.7313642756680732 Threshold: 0.11 Accuracy: 0.7247888723298559 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 0.586300979698858 AUROC: 0.7800986540378281 AUPRC: 0.5323238383715438 Sensitivity: 0.7100893997445722 Specificity: 0.7202653247941445 Threshold: 0.1 Accuracy: 0.7175816773324352 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.5707425894215703 AUROC: 0.7885166860621465 AUPRC: 0.5802837261140817 Sensitivity: 0.7241962774957699 Specificity: 0.7285513361462729 Threshold: 0.15 Accuracy: 0.7272727272727273 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.5373387128435155 AUROC: 0.7852551912261821 AUPRC: 0.5398938005469665 Sensitivity: 0.7203065134099617 Specificity: 0.7252973467520586 Threshold: 0.14 Accuracy: 0.723981138430448 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.51it/s]
Loss: 0.6492645563557744 AUROC: 0.7772066225449249 AUPRC: 0.568561359247153 Sensitivity: 0.7123519458544839 Specificity: 0.7060478199718706 Threshold: 0.09 Accuracy: 0.7078986587183308 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.55it/s]
Loss: 0.6112937311972341 AUROC: 0.7731910894710214 AUPRC: 0.5182873016606615 Sensitivity: 0.6934865900383141 Specificity: 0.722323879231473 Threshold: 0.09 Accuracy: 0.7147187605254295 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.51it/s]
Loss: 0.6102642118930817 AUROC: 0.7706895033567269 AUPRC: 0.5572566599787737 Sensitivity: 0.6971235194585449 Specificity: 0.7011251758087201 Threshold: 0.13 Accuracy: 0.6999503229011426 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.51it/s]
Loss: 0.5668915067949603 AUROC: 0.7706742021385362 AUPRC: 0.5121706656240965 Sensitivity: 0.7132822477650064 Specificity: 0.7111161939615737 Threshold: 0.12 Accuracy: 0.7116874368474234 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.6016536355018616 AUROC: 0.769190220870488 AUPRC: 0.5546967244830416 Sensitivity: 0.6988155668358714 Specificity: 0.6969057665260197 Threshold: 0.13 Accuracy: 0.6974664679582713 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.55it/s]
Loss: 0.5669272993841479 AUROC: 0.7690196466776269 AUPRC: 0.5102817152302109 Sensitivity: 0.7164750957854407 Specificity: 0.7031107044830741 Threshold: 0.12 Accuracy: 0.7066352307174133 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.6281019542366266 AUROC: 0.7694127334299538 AUPRC: 0.5528199268252343 Sensitivity: 0.6988155668358714 Specificity: 0.69901547116737 Threshold: 0.12 Accuracy: 0.698956780923994 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.5786988286561864 AUROC: 0.7716869746990893 AUPRC: 0.5165959090863764 Sensitivity: 0.7171136653895275 Specificity: 0.7028819762122598 Threshold: 0.11 Accuracy: 0.7066352307174133 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.6392010189592838 AUROC: 0.7511595641133648 AUPRC: 0.5296909129055696 Sensitivity: 0.6785109983079526 Specificity: 0.6969057665260197 Threshold: 0.12 Accuracy: 0.6915052160953801 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.5938641650061454 AUROC: 0.7559714729399557 AUPRC: 0.49242427438425224 Sensitivity: 0.6966794380587484 Specificity: 0.7010521500457456 Threshold: 0.11 Accuracy: 0.6998989558773998 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.52it/s]
Loss: 0.6351959696039557 AUROC: 0.7705788420303618 AUPRC: 0.5559373689465285 Sensitivity: 0.700507614213198 Specificity: 0.6954992967651196 Threshold: 0.11 Accuracy: 0.696969696969697 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 0.5856901298287094 AUROC: 0.7730600746185816 AUPRC: 0.5201955267210607 Sensitivity: 0.7279693486590039 Specificity: 0.7042543458371455 Threshold: 0.1 Accuracy: 0.710508588750421 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.6609095279127359 AUROC: 0.780883434356415 AUPRC: 0.5680409569179741 Sensitivity: 0.7123519458544839 Specificity: 0.7130801687763713 Threshold: 0.09 Accuracy: 0.7128663686040735 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.55it/s]
Loss: 0.6095739431599135 AUROC: 0.7831414995460488 AUPRC: 0.5373225165623394 Sensitivity: 0.7292464878671775 Specificity: 0.7120311070448307 Threshold: 0.08 Accuracy: 0.7165712361064331 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.52it/s]
Loss: 0.725108465179801 AUROC: 0.7565046251674795 AUPRC: 0.5374763800080463 Sensitivity: 0.6937394247038917 Specificity: 0.689873417721519 Threshold: 0.07 Accuracy: 0.6910084451068058 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 0.6654992585861554 AUROC: 0.7599523818704657 AUPRC: 0.49829800780535327 Sensitivity: 0.6845466155810983 Specificity: 0.7136322049405307 Threshold: 0.07 Accuracy: 0.705961603233412 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.7105507701635361 AUROC: 0.7836654363031025 AUPRC: 0.5757916300593323 Sensitivity: 0.7191201353637902 Specificity: 0.7025316455696202 Threshold: 0.06 Accuracy: 0.7074018877297565 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 0.6586075896216977 AUROC: 0.7851812123825248 AUPRC: 0.5458900916871022 Sensitivity: 0.719029374201788 Specificity: 0.7236962488563586 Threshold: 0.06 Accuracy: 0.7224654765914449 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 0.6736438851803541 AUROC: 0.7599101382433644 AUPRC: 0.5393335478813274 Sensitivity: 0.7055837563451777 Specificity: 0.6835443037974683 Threshold: 0.09 Accuracy: 0.6900149031296572 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.49it/s]
Loss: 0.616829365171412 AUROC: 0.7673352951967648 AUPRC: 0.5138256763504758 Sensitivity: 0.7017879948914432 Specificity: 0.7083714547118024 Threshold: 0.09 Accuracy: 0.7066352307174133 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 0.6979496171697974 AUROC: 0.7485643775240897 AUPRC: 0.5235654634667055 Sensitivity: 0.6734348561759729 Specificity: 0.6926863572433193 Threshold: 0.09 Accuracy: 0.6870342771982116 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.55it/s]
Loss: 0.6404280018421912 AUROC: 0.7565936839448529 AUPRC: 0.495373962924768 Sensitivity: 0.7043422733077905 Specificity: 0.6935041171088746 Threshold: 0.08 Accuracy: 0.6963624115863927 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 17, 0.5443 Epoch with best model Test AUROC: 1, 0.8323 Epoch with best model Test Accuracy: 1, 0.7664
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 17, 0.5443
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0017.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 0.5182698178355412 AUROC: 0.7767853074072907 AUPRC: 0.520568938411387 Sensitivity: 0.7037037037037037 Specificity: 0.716376944190302 Threshold: 0.18 Accuracy: 0.7130346918154261
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.7767853074072907
best_model_val_test_auprc: 0.520568938411387
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 1, 0.8323
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9cbf0c79_0001.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.58it/s]
Loss: 0.6065289046495191 AUROC: 0.8322738219179524 AUPRC: 0.6797827493803628 Sensitivity: 0.7420178799489144 Specificity: 0.77516010978957 Threshold: 0.09 Accuracy: 0.7664196699225329
best_model_auroc_test_auroc: 0.8322738219179524
best_model_auroc_test_auprc: 0.6797827493803628 Total Processing Time: 3718.4740 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=True,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: True
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(eegResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
)
(eegFc): Linear(in_features=720, out_features=32, bias=True)
(fullLinear1): Linear(in_features=64, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.64it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
[2024-05-03 00:32:54.162114] Completed epoch 0 with training loss 0.47020438, validation loss 0.54999804 Validation loss improved to 0.54999804. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 00:33:51.314218] Completed epoch 1 with training loss 0.43712386, validation loss 0.60628301 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 00:34:48.399113] Completed epoch 2 with training loss 0.42941687, validation loss 0.66066962 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 00:35:45.432352] Completed epoch 3 with training loss 0.42533782, validation loss 0.64462519 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 00:36:42.525381] Completed epoch 4 with training loss 0.42379370, validation loss 0.58325392 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 00:37:39.592969] Completed epoch 5 with training loss 0.41884148, validation loss 0.60267001 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
[2024-05-03 00:38:36.718385] Completed epoch 6 with training loss 0.41611904, validation loss 0.67070758 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
[2024-05-03 00:39:33.786657] Completed epoch 7 with training loss 0.41153434, validation loss 0.56031227 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
[2024-05-03 00:40:30.820573] Completed epoch 8 with training loss 0.40964592, validation loss 0.56225991 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 00:41:27.754826] Completed epoch 9 with training loss 0.41012910, validation loss 0.54919124 Validation loss improved to 0.54919124. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 00:42:24.828269] Completed epoch 10 with training loss 0.40219495, validation loss 0.55577183 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 00:43:21.735663] Completed epoch 11 with training loss 0.40323967, validation loss 0.60562629 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 00:44:18.829018] Completed epoch 12 with training loss 0.39727038, validation loss 0.64120990 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 00:45:15.911485] Completed epoch 13 with training loss 0.39365798, validation loss 0.55296302 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.64it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
[2024-05-03 00:46:13.153870] Completed epoch 14 with training loss 0.39638445, validation loss 0.57000667 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.61it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 00:47:10.756188] Completed epoch 15 with training loss 0.38887811, validation loss 0.56282645 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.68it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
[2024-05-03 00:48:07.538916] Completed epoch 16 with training loss 0.38959631, validation loss 0.56657457 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.68it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 00:49:04.265450] Completed epoch 17 with training loss 0.38514733, validation loss 0.63391459 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.69it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 00:50:00.832903] Completed epoch 18 with training loss 0.38378111, validation loss 0.58770001 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 00:50:57.819368] Completed epoch 19 with training loss 0.38229850, validation loss 0.59456831 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 00:51:54.919338] Completed epoch 20 with training loss 0.38115874, validation loss 0.56535226 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 00:52:51.961021] Completed epoch 21 with training loss 0.38010034, validation loss 0.53584182 Validation loss improved to 0.53584182. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 00:53:49.094276] Completed epoch 22 with training loss 0.37872380, validation loss 0.63682342 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 00:54:46.244618] Completed epoch 23 with training loss 0.37095788, validation loss 0.67187583 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.67it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 00:55:43.054576] Completed epoch 24 with training loss 0.37584561, validation loss 0.59503961 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 00:56:40.104078] Completed epoch 25 with training loss 0.36797002, validation loss 0.60433024 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 00:57:37.131120] Completed epoch 26 with training loss 0.37071908, validation loss 0.54587805 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 00:58:34.123410] Completed epoch 27 with training loss 0.36874297, validation loss 0.54712957 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
[2024-05-03 00:59:31.240923] Completed epoch 28 with training loss 0.36403486, validation loss 0.60589576 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 01:00:28.366700] Completed epoch 29 with training loss 0.36310491, validation loss 0.65269792 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.67it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 01:01:25.243034] Completed epoch 30 with training loss 0.36160418, validation loss 0.58326805 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 01:02:22.360506] Completed epoch 31 with training loss 0.36171925, validation loss 0.59366566 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 01:03:19.420413] Completed epoch 32 with training loss 0.35761294, validation loss 0.65544093 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 01:04:16.462140] Completed epoch 33 with training loss 0.35982567, validation loss 0.59339762 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 01:05:13.505308] Completed epoch 34 with training loss 0.35481498, validation loss 0.64098084 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
[2024-05-03 01:06:10.586799] Completed epoch 35 with training loss 0.35309121, validation loss 0.63621688 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.66it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 01:07:07.562077] Completed epoch 36 with training loss 0.34912416, validation loss 0.64272761 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
[2024-05-03 01:08:04.688416] Completed epoch 37 with training loss 0.35112199, validation loss 0.61487412 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
[2024-05-03 01:09:01.776796] Completed epoch 38 with training loss 0.34746799, validation loss 0.62324965 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 01:09:58.894101] Completed epoch 39 with training loss 0.34693724, validation loss 0.62724155 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.64it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 01:10:56.094995] Completed epoch 40 with training loss 0.34468153, validation loss 0.68568176 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.65it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 01:11:53.200752] Completed epoch 41 with training loss 0.34501952, validation loss 0.58844852 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 21, 0.5358
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 5.41it/s]
Loss: 0.5486195469275117 AUROC: 0.8418209380748736 AUPRC: 0.6889269281521345 Sensitivity: 0.7495769881556683 Specificity: 0.779887482419128 Threshold: 0.18 Accuracy: 0.7709885742672627 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.68it/s]
Loss: 0.5197224884584386 AUROC: 0.8279632580019842 AUPRC: 0.6664400958101776 Sensitivity: 0.7579821200510856 Specificity: 0.7518298261665142 Threshold: 0.17 Accuracy: 0.7534523408555069 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.5952630462124944 AUROC: 0.8431869510067802 AUPRC: 0.6875955469720164 Sensitivity: 0.754653130287648 Specificity: 0.7763713080168776 Threshold: 0.12 Accuracy: 0.7699950322901142 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5651719872989962 AUROC: 0.8315842047208581 AUPRC: 0.6721744549058146 Sensitivity: 0.7656449553001277 Specificity: 0.7479414455626715 Threshold: 0.11 Accuracy: 0.7526103065005052 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.6632387125864625 AUROC: 0.8440746214311722 AUPRC: 0.6869023940339647 Sensitivity: 0.766497461928934 Specificity: 0.7686357243319268 Threshold: 0.08 Accuracy: 0.7680079483358172 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.74it/s]
Loss: 0.6203103023831562 AUROC: 0.8330642928002299 AUPRC: 0.6720017775889765 Sensitivity: 0.7401021711366539 Specificity: 0.77516010978957 Threshold: 0.08 Accuracy: 0.7659144493095318 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.6478738337755203 AUROC: 0.8447778563116222 AUPRC: 0.6863065990546291 Sensitivity: 0.7783417935702199 Specificity: 0.7475386779184248 Threshold: 0.08 Accuracy: 0.756582215598609 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.6045632931173489 AUROC: 0.8336910316316885 AUPRC: 0.6701353017685947 Sensitivity: 0.7598978288633461 Specificity: 0.7543458371454712 Threshold: 0.08 Accuracy: 0.7558100370495117 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5882917996495962 AUROC: 0.8427502552349947 AUPRC: 0.6812668507998161 Sensitivity: 0.7648054145516074 Specificity: 0.7616033755274262 Threshold: 0.12 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 0.5527827230192 AUROC: 0.8321327289999404 AUPRC: 0.6616407497887098 Sensitivity: 0.7726692209450831 Specificity: 0.7451967063129002 Threshold: 0.11 Accuracy: 0.7524418996295049 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.73it/s]
Loss: 0.5940149147063494 AUROC: 0.839911137765022 AUPRC: 0.6747202276126228 Sensitivity: 0.7614213197969543 Specificity: 0.7679324894514767 Threshold: 0.11 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5645517673223249 AUROC: 0.8298814498159074 AUPRC: 0.6525172656574751 Sensitivity: 0.7656449553001277 Specificity: 0.7529734675205856 Threshold: 0.1 Accuracy: 0.7563152576625126 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.71it/s]
Loss: 0.6809933753684163 AUROC: 0.8389377940557019 AUPRC: 0.6720505285825391 Sensitivity: 0.7597292724196277 Specificity: 0.759493670886076 Threshold: 0.07 Accuracy: 0.7595628415300546 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 0.6380660481029942 AUROC: 0.8300180149073579 AUPRC: 0.6518178725656913 Sensitivity: 0.7388250319284803 Specificity: 0.7753888380603843 Threshold: 0.07 Accuracy: 0.7657460424385315 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.72it/s]
Loss: 0.5595764061436057 AUROC: 0.8304739874488637 AUPRC: 0.6451168614330822 Sensitivity: 0.7597292724196277 Specificity: 0.750351617440225 Threshold: 0.14 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5321611449603112 AUROC: 0.8208895514121561 AUPRC: 0.6154838877848086 Sensitivity: 0.743933588761175 Specificity: 0.7639524245196706 Threshold: 0.14 Accuracy: 0.7586729538565173 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.5689485827460885 AUROC: 0.8304371003400755 AUPRC: 0.6455579494707913 Sensitivity: 0.7597292724196277 Specificity: 0.749648382559775 Threshold: 0.13 Accuracy: 0.7526080476900149 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5396794832201415 AUROC: 0.8213391938014929 AUPRC: 0.6144463514123435 Sensitivity: 0.7484035759897829 Specificity: 0.7637236962488564 Threshold: 0.13 Accuracy: 0.7596833950825194 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5477786939591169 AUROC: 0.8220577771114299 AUPRC: 0.6258295431057748 Sensitivity: 0.7411167512690355 Specificity: 0.7566807313642757 Threshold: 0.16 Accuracy: 0.7521112767014406 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5235582138261488 AUROC: 0.8146002542593703 AUPRC: 0.5891999508299838 Sensitivity: 0.7458492975734355 Specificity: 0.7564043915827996 Threshold: 0.15 Accuracy: 0.7536207477265072 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.70it/s]
Loss: 0.5496657816693187 AUROC: 0.8185713503775573 AUPRC: 0.619325141192938 Sensitivity: 0.7529610829103215 Specificity: 0.7383966244725738 Threshold: 0.15 Accuracy: 0.7426726279185295 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.74it/s]
Loss: 0.5266095164322084 AUROC: 0.8112371015366567 AUPRC: 0.5828810734086528 Sensitivity: 0.7369093231162197 Specificity: 0.757548032936871 Threshold: 0.15 Accuracy: 0.7521050858875042 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.6008176309987903 AUROC: 0.8247255480115468 AUPRC: 0.6349366099104443 Sensitivity: 0.7478849407783418 Specificity: 0.7616033755274262 Threshold: 0.11 Accuracy: 0.7575757575757576 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5725035644987578 AUROC: 0.8166729764120685 AUPRC: 0.6030238079425077 Sensitivity: 0.7586206896551724 Specificity: 0.7479414455626715 Threshold: 0.1 Accuracy: 0.7507578309195015 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.643924348987639 AUROC: 0.8256072689022635 AUPRC: 0.6366126870579968 Sensitivity: 0.7614213197969543 Specificity: 0.739803094233474 Threshold: 0.08 Accuracy: 0.7461500248385494 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.74it/s]
Loss: 0.6118701481690971 AUROC: 0.8176492342422872 AUPRC: 0.6105723039791379 Sensitivity: 0.7496807151979565 Specificity: 0.7554894784995425 Threshold: 0.08 Accuracy: 0.7539575614685079 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.5527572566643357 AUROC: 0.8148267138821659 AUPRC: 0.6135452285862908 Sensitivity: 0.7461928934010152 Specificity: 0.7376933895921237 Threshold: 0.15 Accuracy: 0.7401887729756582 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 0.5277765040756554 AUROC: 0.8061919342758224 AUPRC: 0.5700542424169791 Sensitivity: 0.7547892720306514 Specificity: 0.7367337602927722 Threshold: 0.14 Accuracy: 0.7414954530144829 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.5647049946710467 AUROC: 0.8149576036230279 AUPRC: 0.6138063649302654 Sensitivity: 0.7428087986463621 Specificity: 0.7482419127988749 Threshold: 0.14 Accuracy: 0.7466467958271237 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.5401381071536772 AUROC: 0.8053027275627207 AUPRC: 0.5705208153150877 Sensitivity: 0.7471264367816092 Specificity: 0.7403934126258005 Threshold: 0.13 Accuracy: 0.7421690804984843 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5571925044059753 AUROC: 0.8101039740505139 AUPRC: 0.6060830132027828 Sensitivity: 0.7428087986463621 Specificity: 0.739803094233474 Threshold: 0.15 Accuracy: 0.7406855439642325 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5326796166038 AUROC: 0.7999038055944072 AUPRC: 0.5614313028063881 Sensitivity: 0.7477650063856961 Specificity: 0.7344464775846294 Threshold: 0.14 Accuracy: 0.7379589087234759 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5633329544216394 AUROC: 0.8044888041675293 AUPRC: 0.5930270835718798 Sensitivity: 0.7529610829103215 Specificity: 0.7264416315049227 Threshold: 0.15 Accuracy: 0.734227521112767 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.5352775624362371 AUROC: 0.7949823502399456 AUPRC: 0.5520662753151448 Sensitivity: 0.7484035759897829 Specificity: 0.7284995425434584 Threshold: 0.14 Accuracy: 0.7337487369484675 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.6315201530233026 AUROC: 0.8132358085773237 AUPRC: 0.6118482412386107 Sensitivity: 0.7445008460236887 Specificity: 0.7524613220815752 Threshold: 0.1 Accuracy: 0.7501241927471436 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.5971244185842494 AUROC: 0.8044263010052359 AUPRC: 0.5754814114001142 Sensitivity: 0.7458492975734355 Specificity: 0.7426806953339433 Threshold: 0.09 Accuracy: 0.743516335466487 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.73it/s]
Loss: 0.5843854444101453 AUROC: 0.8041330220537315 AUPRC: 0.5939391895551149 Sensitivity: 0.7445008460236887 Specificity: 0.729957805907173 Threshold: 0.13 Accuracy: 0.734227521112767 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.5533458824439715 AUROC: 0.7945389883842261 AUPRC: 0.5465125427927822 Sensitivity: 0.7388250319284803 Specificity: 0.727355901189387 Threshold: 0.12 Accuracy: 0.7303805995284608 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.5964811500161886 AUROC: 0.7998743458487723 AUPRC: 0.5854124019497887 Sensitivity: 0.727580372250423 Specificity: 0.7433192686357243 Threshold: 0.13 Accuracy: 0.7386984600099354 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5638781252407259 AUROC: 0.7891532847482936 AUPRC: 0.537388323475127 Sensitivity: 0.7215836526181354 Specificity: 0.7401646843549863 Threshold: 0.12 Accuracy: 0.7352643987874705 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.5683677503839135 AUROC: 0.8043424456391108 AUPRC: 0.5968459769541674 Sensitivity: 0.7360406091370558 Specificity: 0.7440225035161744 Threshold: 0.15 Accuracy: 0.741679085941381 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.5357343596155926 AUROC: 0.7941447023260759 AUPRC: 0.5610176750661408 Sensitivity: 0.7471264367816092 Specificity: 0.7214089661482159 Threshold: 0.13 Accuracy: 0.7281913102054564 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.5357734495773911 AUROC: 0.7991984788232298 AUPRC: 0.5887941466944014 Sensitivity: 0.7292724196277496 Specificity: 0.720112517580872 Threshold: 0.19 Accuracy: 0.7228017883755589 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5073576382090969 AUROC: 0.7895841585662389 AUPRC: 0.5420361844875623 Sensitivity: 0.7343550446998723 Specificity: 0.7264409881061299 Threshold: 0.18 Accuracy: 0.728528123947457 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.6426741806790233 AUROC: 0.8062724743634595 AUPRC: 0.6004285026326414 Sensitivity: 0.7343485617597293 Specificity: 0.7552742616033755 Threshold: 0.1 Accuracy: 0.7491306507699951 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.72it/s]
Loss: 0.6000214776685161 AUROC: 0.797400647800528 AUPRC: 0.565300467937039 Sensitivity: 0.722860791826309 Specificity: 0.7486276303751144 Threshold: 0.09 Accuracy: 0.7418322667564836 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.6756585063412786 AUROC: 0.7996125663670481 AUPRC: 0.587626637712481 Sensitivity: 0.7428087986463621 Specificity: 0.7229254571026723 Threshold: 0.08 Accuracy: 0.7287630402384501 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.6341681876169738 AUROC: 0.7894326954648121 AUPRC: 0.5503507781492668 Sensitivity: 0.7362707535121328 Specificity: 0.7136322049405307 Threshold: 0.07 Accuracy: 0.7196025597844392 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5933990385383368 AUROC: 0.7920911658944172 AUPRC: 0.5729421549914661 Sensitivity: 0.7258883248730964 Specificity: 0.7222222222222222 Threshold: 0.13 Accuracy: 0.7232985593641331 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.74it/s]
Loss: 0.5644856540746587 AUROC: 0.7795019303147044 AUPRC: 0.5322994622555131 Sensitivity: 0.7145593869731801 Specificity: 0.722323879231473 Threshold: 0.12 Accuracy: 0.7202761872684406 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.606576981022954 AUROC: 0.7929562280908423 AUPRC: 0.5743455986387778 Sensitivity: 0.739424703891709 Specificity: 0.7137834036568214 Threshold: 0.12 Accuracy: 0.7213114754098361 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5685278319863862 AUROC: 0.7808035343922021 AUPRC: 0.5322291265333321 Sensitivity: 0.7298850574712644 Specificity: 0.7108874656907593 Threshold: 0.11 Accuracy: 0.7158976086224318 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5423164963722229 AUROC: 0.781239216470213 AUPRC: 0.5550360625817092 Sensitivity: 0.7225042301184433 Specificity: 0.7172995780590717 Threshold: 0.21 Accuracy: 0.7188276204669647 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.72it/s]
Loss: 0.518586165161543 AUROC: 0.7671181055807361 AUPRC: 0.5049567826330789 Sensitivity: 0.7068965517241379 Specificity: 0.7015096065873742 Threshold: 0.19 Accuracy: 0.7029302795554059 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5467080483213067 AUROC: 0.7805300320560874 AUPRC: 0.5530582109986856 Sensitivity: 0.7140439932318104 Specificity: 0.7271448663853727 Threshold: 0.21 Accuracy: 0.7232985593641331 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5222478093959952 AUROC: 0.7669272796000091 AUPRC: 0.5012219005201602 Sensitivity: 0.6992337164750958 Specificity: 0.7099725526075022 Threshold: 0.19 Accuracy: 0.7071404513304143 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.6143820229917765 AUROC: 0.7878729465184517 AUPRC: 0.5647943358283647 Sensitivity: 0.7360406091370558 Specificity: 0.7229254571026723 Threshold: 0.12 Accuracy: 0.726775956284153 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.5754487578586865 AUROC: 0.7746490496238106 AUPRC: 0.5184685938416241 Sensitivity: 0.7132822477650064 Specificity: 0.7134034766697164 Threshold: 0.11 Accuracy: 0.7133715055574268 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.6497956523671746 AUROC: 0.7921494713244375 AUPRC: 0.5734184026011698 Sensitivity: 0.7411167512690355 Specificity: 0.7208157524613221 Threshold: 0.09 Accuracy: 0.726775956284153 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.6107012145621802 AUROC: 0.7805834966272074 AUPRC: 0.5353322242317149 Sensitivity: 0.7318007662835249 Specificity: 0.7099725526075022 Threshold: 0.08 Accuracy: 0.7157292017514315 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.5820736410096288 AUROC: 0.7889272038857593 AUPRC: 0.5689940053319165 Sensitivity: 0.7258883248730964 Specificity: 0.7264416315049227 Threshold: 0.21 Accuracy: 0.7262791852955788 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.5150349608031652 AUROC: 0.7743737285570899 AUPRC: 0.5198893950850579 Sensitivity: 0.7068965517241379 Specificity: 0.7175205855443733 Threshold: 0.19 Accuracy: 0.7147187605254295 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.69it/s]
Loss: 0.5951428124681115 AUROC: 0.7878039319278155 AUPRC: 0.5704537364450928 Sensitivity: 0.7258883248730964 Specificity: 0.7243319268635724 Threshold: 0.14 Accuracy: 0.7247888723298559 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5573445177206429 AUROC: 0.7741121370289745 AUPRC: 0.5255838159478632 Sensitivity: 0.6998722860791826 Specificity: 0.7202653247941445 Threshold: 0.13 Accuracy: 0.7148871673964298 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.6566948657855392 AUROC: 0.7797768210927626 AUPRC: 0.5566818902876279 Sensitivity: 0.7208121827411168 Specificity: 0.7172995780590717 Threshold: 0.13 Accuracy: 0.7183308494783904 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5748675654652298 AUROC: 0.7670950282711648 AUPRC: 0.5089146045351641 Sensitivity: 0.6928480204342273 Specificity: 0.7152333028362305 Threshold: 0.12 Accuracy: 0.7093297406534187 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5914493221789598 AUROC: 0.7963379430320252 AUPRC: 0.5856245363313889 Sensitivity: 0.727580372250423 Specificity: 0.7355836849507735 Threshold: 0.13 Accuracy: 0.7332339791356185 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5619011889862758 AUROC: 0.785832489112768 AUPRC: 0.5452439321424984 Sensitivity: 0.7209450830140486 Specificity: 0.7191216834400732 Threshold: 0.11 Accuracy: 0.7196025597844392 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.6393388509750366 AUROC: 0.7941092477171638 AUPRC: 0.5803351833991447 Sensitivity: 0.7208121827411168 Specificity: 0.7433192686357243 Threshold: 0.1 Accuracy: 0.7367113760556383 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 0.6044103383056579 AUROC: 0.7823796562123533 AUPRC: 0.5452801073326505 Sensitivity: 0.722860791826309 Specificity: 0.7179780420860018 Threshold: 0.08 Accuracy: 0.7192657460424385 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.6386853512376547 AUROC: 0.782924124407129 AUPRC: 0.5633994590943031 Sensitivity: 0.7140439932318104 Specificity: 0.7264416315049227 Threshold: 0.14 Accuracy: 0.7228017883755589 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.74it/s]
Loss: 0.5643787220601113 AUROC: 0.7723330663376251 AUPRC: 0.5148063639264392 Sensitivity: 0.7075351213282248 Specificity: 0.7051692589204026 Threshold: 0.12 Accuracy: 0.7057931963624116 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.6466555399820209 AUROC: 0.7872339666016978 AUPRC: 0.5708146201906307 Sensitivity: 0.7225042301184433 Specificity: 0.7313642756680732 Threshold: 0.1 Accuracy: 0.7287630402384501 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.6091072794891172 AUROC: 0.7770394499304175 AUPRC: 0.5288054057942833 Sensitivity: 0.6979565772669221 Specificity: 0.729871912168344 Threshold: 0.09 Accuracy: 0.7214550353654429 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.6205060547217727 AUROC: 0.776797294628047 AUPRC: 0.5560269703598442 Sensitivity: 0.7258883248730964 Specificity: 0.7165963431786216 Threshold: 0.13 Accuracy: 0.719324391455539 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5769112138978897 AUROC: 0.7659050862390295 AUPRC: 0.5120941515861803 Sensitivity: 0.7094508301404853 Specificity: 0.6964775846294602 Threshold: 0.11 Accuracy: 0.6998989558773998 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.6288812607526779 AUROC: 0.7697125899272015 AUPRC: 0.5466171656658463 Sensitivity: 0.727580372250423 Specificity: 0.7060478199718706 Threshold: 0.12 Accuracy: 0.7123695976154992 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.5843825181645732 AUROC: 0.7606697502626139 AUPRC: 0.5063713539135088 Sensitivity: 0.7068965517241379 Specificity: 0.7005946935041171 Threshold: 0.11 Accuracy: 0.7022566520714045 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0039.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.6263504754751921 AUROC: 0.7835809529249097 AUPRC: 0.5670408137307961 Sensitivity: 0.7309644670050761 Specificity: 0.7194092827004219 Threshold: 0.11 Accuracy: 0.7228017883755589 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5907128712823314 AUROC: 0.7723118877940313 AUPRC: 0.5284022663804268 Sensitivity: 0.7043422733077905 Specificity: 0.7143183897529735 Threshold: 0.1 Accuracy: 0.7116874368474234 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0040.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.73it/s]
Loss: 0.6872758883982897 AUROC: 0.782254206915262 AUPRC: 0.5628607187197733 Sensitivity: 0.7174280879864636 Specificity: 0.7222222222222222 Threshold: 0.08 Accuracy: 0.7208147044212618 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.6413549654265885 AUROC: 0.7742641843660868 AUPRC: 0.5316587795649955 Sensitivity: 0.7100893997445722 Specificity: 0.7134034766697164 Threshold: 0.07 Accuracy: 0.712529471202425 Intermediate Model: ./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0041.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.5932526383548975 AUROC: 0.7552397543080573 AUPRC: 0.5261103299621099 Sensitivity: 0.6988155668358714 Specificity: 0.6997187060478199 Threshold: 0.19 Accuracy: 0.6994535519125683 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5535720237480697 AUROC: 0.7469723446195983 AUPRC: 0.4862941803468687 Sensitivity: 0.6864623243933589 Specificity: 0.688700823421775 Threshold: 0.17 Accuracy: 0.6881104749073762 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 21, 0.5358 Epoch with best model Test AUROC: 3, 0.8337 Epoch with best model Test Accuracy: 2, 0.7659
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 21, 0.5358
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0021.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5073576382090969 AUROC: 0.7895841585662389 AUPRC: 0.5420361844875623 Sensitivity: 0.7343550446998723 Specificity: 0.7264409881061299 Threshold: 0.18 Accuracy: 0.728528123947457
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.7895841585662389
best_model_val_test_auprc: 0.5420361844875623
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 3, 0.8337
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d4ab1816_0003.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 0.6045632931173489 AUROC: 0.8336910316316885 AUPRC: 0.6701353017685947 Sensitivity: 0.7598978288633461 Specificity: 0.7543458371454712 Threshold: 0.08 Accuracy: 0.7558100370495117
best_model_auroc_test_auroc: 0.8336910316316885
best_model_auroc_test_auprc: 0.6701353017685947 Total Processing Time: 3583.1070 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=True,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: True
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(ecgResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(ecgFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=64, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.66it/s]
[2024-05-03 01:32:45.188876] Completed epoch 0 with training loss 0.47371641, validation loss 0.63347888 Validation loss improved to 0.63347888. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.14it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.66it/s]
[2024-05-03 01:33:50.872295] Completed epoch 1 with training loss 0.43838322, validation loss 0.64608312 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.66it/s]
[2024-05-03 01:34:56.014351] Completed epoch 2 with training loss 0.43159854, validation loss 0.60957444 Validation loss improved to 0.60957444. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.63it/s]
[2024-05-03 01:36:01.222356] Completed epoch 3 with training loss 0.42497167, validation loss 0.68425071 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.66it/s]
[2024-05-03 01:37:06.407991] Completed epoch 4 with training loss 0.42566216, validation loss 0.62465316 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.64it/s]
[2024-05-03 01:38:11.590361] Completed epoch 5 with training loss 0.42078590, validation loss 0.62169468 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.66it/s]
[2024-05-03 01:39:16.758015] Completed epoch 6 with training loss 0.42202735, validation loss 0.53636146 Validation loss improved to 0.53636146. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.66it/s]
[2024-05-03 01:40:21.917884] Completed epoch 7 with training loss 0.41536924, validation loss 0.57658350 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.17it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.66it/s]
[2024-05-03 01:41:26.934393] Completed epoch 8 with training loss 0.41462937, validation loss 0.67849898 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-03 01:42:32.127737] Completed epoch 9 with training loss 0.41391215, validation loss 0.62817276 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [01:00<00:00, 3.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.62it/s]
[2024-05-03 01:43:39.693448] Completed epoch 10 with training loss 0.41271001, validation loss 0.51008856 Validation loss improved to 0.51008856. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.16it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
[2024-05-03 01:44:44.692393] Completed epoch 11 with training loss 0.41004160, validation loss 0.59490758 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.17it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.68it/s]
[2024-05-03 01:45:49.676883] Completed epoch 12 with training loss 0.40992779, validation loss 0.52706796 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.17it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.69it/s]
[2024-05-03 01:46:54.652115] Completed epoch 13 with training loss 0.40288106, validation loss 0.62297165 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.18it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.70it/s]
[2024-05-03 01:47:59.376762] Completed epoch 14 with training loss 0.40202180, validation loss 0.54324782 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.18it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.72it/s]
[2024-05-03 01:49:04.070143] Completed epoch 15 with training loss 0.39964435, validation loss 0.52419299 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.19it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.58it/s]
[2024-05-03 01:50:08.905765] Completed epoch 16 with training loss 0.39681262, validation loss 0.54207617 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.18it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.68it/s]
[2024-05-03 01:51:13.696448] Completed epoch 17 with training loss 0.39472413, validation loss 0.52802342 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.19it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.69it/s]
[2024-05-03 01:52:18.188700] Completed epoch 18 with training loss 0.39142534, validation loss 0.51496023 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.18it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.72it/s]
[2024-05-03 01:53:22.988269] Completed epoch 19 with training loss 0.39195210, validation loss 0.49091655 Validation loss improved to 0.49091655. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.17it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.69it/s]
[2024-05-03 01:54:27.991842] Completed epoch 20 with training loss 0.38888600, validation loss 0.57270551 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:58<00:00, 3.17it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.67it/s]
[2024-05-03 01:55:32.940150] Completed epoch 21 with training loss 0.38564724, validation loss 0.53975117 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.21it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 01:56:36.925104] Completed epoch 22 with training loss 0.38376734, validation loss 0.56302929 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 01:57:40.391376] Completed epoch 23 with training loss 0.38048959, validation loss 0.53920293 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 01:58:43.781576] Completed epoch 24 with training loss 0.37792414, validation loss 0.51214993 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 01:59:47.235485] Completed epoch 25 with training loss 0.37724197, validation loss 0.51255798 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.23it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:00:50.843064] Completed epoch 26 with training loss 0.37471166, validation loss 0.50438350 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.25it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:01:54.152143] Completed epoch 27 with training loss 0.36807084, validation loss 0.54188699 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:02:57.560677] Completed epoch 28 with training loss 0.36702412, validation loss 0.55799168 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.25it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:04:00.888434] Completed epoch 29 with training loss 0.36587068, validation loss 0.50741541 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:05:04.331703] Completed epoch 30 with training loss 0.36436334, validation loss 0.52382135 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.25it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
[2024-05-03 02:06:07.790587] Completed epoch 31 with training loss 0.36006379, validation loss 0.48708424 Validation loss improved to 0.48708424. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.25it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 02:07:11.171943] Completed epoch 32 with training loss 0.35953662, validation loss 0.52090770 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:08:14.705326] Completed epoch 33 with training loss 0.35602587, validation loss 0.52015477 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.25it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 02:09:17.971981] Completed epoch 34 with training loss 0.35199642, validation loss 0.50768185 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 02:10:21.399970] Completed epoch 35 with training loss 0.35102814, validation loss 0.53175062 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:11:24.826053] Completed epoch 36 with training loss 0.34579200, validation loss 0.54381728 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 02:12:28.240423] Completed epoch 37 with training loss 0.34403476, validation loss 0.58857965 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:13:31.632870] Completed epoch 38 with training loss 0.34552440, validation loss 0.53888273 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.25it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 02:14:35.000276] Completed epoch 39 with training loss 0.33663863, validation loss 0.63235247 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:15:38.392060] Completed epoch 40 with training loss 0.33427292, validation loss 0.59831131 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 02:16:41.909510] Completed epoch 41 with training loss 0.33481207, validation loss 0.54763192 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 02:17:45.360055] Completed epoch 42 with training loss 0.33443567, validation loss 0.56313729 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.23it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 02:18:48.993652] Completed epoch 43 with training loss 0.33188212, validation loss 0.59279001 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.25it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:19:52.314134] Completed epoch 44 with training loss 0.32818052, validation loss 0.61082470 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.21it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 02:20:56.386927] Completed epoch 45 with training loss 0.32650658, validation loss 0.63695598 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:21:59.773509] Completed epoch 46 with training loss 0.32458630, validation loss 0.58145404 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 02:23:03.215762] Completed epoch 47 with training loss 0.32158500, validation loss 0.65691960 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
[2024-05-03 02:24:06.727777] Completed epoch 48 with training loss 0.31862122, validation loss 0.62920690 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:57<00:00, 3.21it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 02:25:10.644282] Completed epoch 49 with training loss 0.31350794, validation loss 0.62304872 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.23it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
[2024-05-03 02:26:14.252023] Completed epoch 50 with training loss 0.31571355, validation loss 0.62988865 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:56<00:00, 3.24it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 02:27:17.734075] Completed epoch 51 with training loss 0.31229007, validation loss 0.59737241 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 31, 0.4871
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 5.34it/s]
Loss: 0.6388839613646269 AUROC: 0.8426883800847689 AUPRC: 0.6999465615856963 Sensitivity: 0.7817258883248731 Specificity: 0.7538677918424754 Threshold: 0.1 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 0.5939709758886726 AUROC: 0.8314236859663082 AUPRC: 0.6794819361939868 Sensitivity: 0.7496807151979565 Specificity: 0.7657822506861848 Threshold: 0.1 Accuracy: 0.761535870663523 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.6468912465497851 AUROC: 0.8443233119388103 AUPRC: 0.7035308176685294 Sensitivity: 0.7935702199661591 Specificity: 0.7468354430379747 Threshold: 0.08 Accuracy: 0.7605563835072032 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.6064491464245704 AUROC: 0.834730825092689 AUPRC: 0.684065241946066 Sensitivity: 0.7605363984674329 Specificity: 0.7543458371454712 Threshold: 0.08 Accuracy: 0.7559784439205119 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.6065489426255226 AUROC: 0.8437961832551565 AUPRC: 0.7036787468418078 Sensitivity: 0.7715736040609137 Specificity: 0.760196905766526 Threshold: 0.1 Accuracy: 0.7635370094386488 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5721243716055348 AUROC: 0.8348687047144315 AUPRC: 0.6842828253936831 Sensitivity: 0.7477650063856961 Specificity: 0.7692131747483989 Threshold: 0.1 Accuracy: 0.7635567531155271 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 0.6886052479967475 AUROC: 0.8444815695345799 AUPRC: 0.7038665432084806 Sensitivity: 0.7597292724196277 Specificity: 0.7616033755274262 Threshold: 0.06 Accuracy: 0.7610531544957775 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.6518702441325752 AUROC: 0.8360547761851511 AUPRC: 0.6858495371349757 Sensitivity: 0.7464878671775224 Specificity: 0.7733302836230558 Threshold: 0.06 Accuracy: 0.7662512630515325 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.6314616026356816 AUROC: 0.8445017979490768 AUPRC: 0.7035682677484619 Sensitivity: 0.751269035532995 Specificity: 0.770042194092827 Threshold: 0.09 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5891154126454425 AUROC: 0.8372792611521829 AUPRC: 0.6857379279683231 Sensitivity: 0.7739463601532567 Specificity: 0.7442817932296432 Threshold: 0.08 Accuracy: 0.7521050858875042 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.6233027009293437 AUROC: 0.8437462071722819 AUPRC: 0.6999830972543284 Sensitivity: 0.7563451776649747 Specificity: 0.7637130801687764 Threshold: 0.09 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.5843813129330194 AUROC: 0.8362252999758126 AUPRC: 0.6835740070210867 Sensitivity: 0.7477650063856961 Specificity: 0.7724153705397987 Threshold: 0.09 Accuracy: 0.7659144493095318 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.70it/s]
Loss: 0.5334361074492335 AUROC: 0.8424158914424287 AUPRC: 0.6959177563170952 Sensitivity: 0.7631133671742809 Specificity: 0.7573839662447257 Threshold: 0.16 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5059756735960642 AUROC: 0.8350319985884865 AUPRC: 0.6787459735246019 Sensitivity: 0.7464878671775224 Specificity: 0.7717291857273559 Threshold: 0.16 Accuracy: 0.7650724149545302 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.5729758003726602 AUROC: 0.8427050387790604 AUPRC: 0.6978754642657032 Sensitivity: 0.7461928934010152 Specificity: 0.7693389592123769 Threshold: 0.12 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.5460118316514517 AUROC: 0.8353321496718348 AUPRC: 0.6804336587528335 Sensitivity: 0.7637292464878672 Specificity: 0.7552607502287283 Threshold: 0.11 Accuracy: 0.757494105759515 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.6720064217224717 AUROC: 0.8417126565619786 AUPRC: 0.7007872249913012 Sensitivity: 0.7529610829103215 Specificity: 0.7658227848101266 Threshold: 0.07 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.79it/s]
Loss: 0.636929646294604 AUROC: 0.8353514294494513 AUPRC: 0.6828020429991406 Sensitivity: 0.7777777777777778 Specificity: 0.7410795974382434 Threshold: 0.06 Accuracy: 0.7507578309195015 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 0.6305156163871288 AUROC: 0.8427252671935573 AUPRC: 0.6974745933363287 Sensitivity: 0.754653130287648 Specificity: 0.7616033755274262 Threshold: 0.09 Accuracy: 0.7595628415300546 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.79it/s]
Loss: 0.5909546631318267 AUROC: 0.8358341541844712 AUPRC: 0.6781284691024282 Sensitivity: 0.7790549169859514 Specificity: 0.7438243366880146 Threshold: 0.08 Accuracy: 0.7531155271135063 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.5093803284689784 AUROC: 0.840679817515903 AUPRC: 0.689719201231575 Sensitivity: 0.7631133671742809 Specificity: 0.7609001406469761 Threshold: 0.18 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 0.48843696521174523 AUROC: 0.8330615176807246 AUPRC: 0.6703261576121907 Sensitivity: 0.7675606641123882 Specificity: 0.7532021957913998 Threshold: 0.17 Accuracy: 0.756988885146514 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.5873925676569343 AUROC: 0.8414282688522874 AUPRC: 0.693064437656338 Sensitivity: 0.7445008460236887 Specificity: 0.7665260196905767 Threshold: 0.11 Accuracy: 0.7600596125186289 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5592664523470786 AUROC: 0.8345606664493309 AUPRC: 0.673737350601777 Sensitivity: 0.7662835249042146 Specificity: 0.755032021957914 Threshold: 0.1 Accuracy: 0.757999326372516 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
Loss: 0.5285725174471736 AUROC: 0.8387105218692958 AUPRC: 0.6846920592880926 Sensitivity: 0.7698815566835872 Specificity: 0.7475386779184248 Threshold: 0.16 Accuracy: 0.7540983606557377 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.79it/s]
Loss: 0.49990797908075396 AUROC: 0.8320628398060804 AUPRC: 0.6668460752952743 Sensitivity: 0.7567049808429118 Specificity: 0.7653247941445562 Threshold: 0.16 Accuracy: 0.7630515325025261 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.6249671578407288 AUROC: 0.8409642052255946 AUPRC: 0.6912998736261086 Sensitivity: 0.766497461928934 Specificity: 0.750351617440225 Threshold: 0.08 Accuracy: 0.7550919026328863 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.5915354639291763 AUROC: 0.8346686039921993 AUPRC: 0.6740689917714547 Sensitivity: 0.756066411238825 Specificity: 0.7673833485818847 Threshold: 0.08 Accuracy: 0.7643987874705288 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.5435245167464018 AUROC: 0.8401955254747134 AUPRC: 0.6796355941357742 Sensitivity: 0.7648054145516074 Specificity: 0.7672292545710268 Threshold: 0.14 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.516293141309933 AUROC: 0.8336966549001599 AUPRC: 0.663658709696495 Sensitivity: 0.7586206896551724 Specificity: 0.7580054894784996 Threshold: 0.13 Accuracy: 0.7581677332435164 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5277077183127403 AUROC: 0.8371803018079443 AUPRC: 0.6723851288720699 Sensitivity: 0.7597292724196277 Specificity: 0.7672292545710268 Threshold: 0.16 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5010684033234915 AUROC: 0.8300474457800071 AUPRC: 0.6567546734482654 Sensitivity: 0.7547892720306514 Specificity: 0.7593778591033852 Threshold: 0.15 Accuracy: 0.7581677332435164 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.5455126296728849 AUROC: 0.8358916328138201 AUPRC: 0.6658666950368326 Sensitivity: 0.766497461928934 Specificity: 0.7573839662447257 Threshold: 0.14 Accuracy: 0.7600596125186289 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5197000580449258 AUROC: 0.8287668011577215 AUPRC: 0.6508985612711425 Sensitivity: 0.7611749680715197 Specificity: 0.7490850869167429 Threshold: 0.13 Accuracy: 0.7522734927585045 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.5290799159556627 AUROC: 0.8344399465969856 AUPRC: 0.6603863630275478 Sensitivity: 0.7698815566835872 Specificity: 0.749648382559775 Threshold: 0.16 Accuracy: 0.7555886736214605 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5019684749585326 AUROC: 0.8267815682989043 AUPRC: 0.6440930494598716 Sensitivity: 0.7618135376756067 Specificity: 0.7486276303751144 Threshold: 0.15 Accuracy: 0.7521050858875042 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.519587367773056 AUROC: 0.8324147253338284 AUPRC: 0.6510872242363756 Sensitivity: 0.7411167512690355 Specificity: 0.7658227848101266 Threshold: 0.18 Accuracy: 0.7585692995529061 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.49438623138653337 AUROC: 0.8231778565327481 AUPRC: 0.6320721670062812 Sensitivity: 0.7611749680715197 Specificity: 0.7431381518755719 Threshold: 0.16 Accuracy: 0.7478949141124958 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.4913540417328477 AUROC: 0.8308690364849203 AUPRC: 0.651717466845892 Sensitivity: 0.7461928934010152 Specificity: 0.7609001406469761 Threshold: 0.21 Accuracy: 0.756582215598609 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.72it/s]
Loss: 0.47429178110373915 AUROC: 0.8223964413035934 AUPRC: 0.6315868141767642 Sensitivity: 0.7509578544061303 Specificity: 0.7495425434583715 Threshold: 0.19 Accuracy: 0.7499157965644998 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.72it/s]
Loss: 0.5750471223145723 AUROC: 0.8329251953231905 AUPRC: 0.6563872010965479 Sensitivity: 0.7461928934010152 Specificity: 0.7609001406469761 Threshold: 0.12 Accuracy: 0.756582215598609 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.546808908222824 AUROC: 0.823850603924428 AUPRC: 0.6343777747186722 Sensitivity: 0.7445721583652618 Specificity: 0.7621225983531564 Threshold: 0.11 Accuracy: 0.757494105759515 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.70it/s]
Loss: 0.5335348732769489 AUROC: 0.8251324961149546 AUPRC: 0.6388216633790865 Sensitivity: 0.7360406091370558 Specificity: 0.7616033755274262 Threshold: 0.16 Accuracy: 0.7540983606557377 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5112581249847207 AUROC: 0.8180069325406424 AUPRC: 0.6167724155997425 Sensitivity: 0.7554278416347382 Specificity: 0.742451967063129 Threshold: 0.14 Accuracy: 0.7458740316604917 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.557078255340457 AUROC: 0.8252806395034756 AUPRC: 0.6377521355002664 Sensitivity: 0.766497461928934 Specificity: 0.7383966244725738 Threshold: 0.13 Accuracy: 0.7466467958271237 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5313608885131856 AUROC: 0.8175248650707685 AUPRC: 0.6154323147343044 Sensitivity: 0.7547892720306514 Specificity: 0.7419945105215004 Threshold: 0.12 Accuracy: 0.7453688110474908 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.5406801169738173 AUROC: 0.8271255898962638 AUPRC: 0.6384345949921876 Sensitivity: 0.7529610829103215 Specificity: 0.7552742616033755 Threshold: 0.15 Accuracy: 0.754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5113600479659214 AUROC: 0.8197825708473404 AUPRC: 0.6196616957942657 Sensitivity: 0.7579821200510856 Specificity: 0.7376486733760292 Threshold: 0.13 Accuracy: 0.743011114853486 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5121595915406942 AUROC: 0.8274540041551544 AUPRC: 0.6376174847977616 Sensitivity: 0.7563451776649747 Specificity: 0.7580872011251758 Threshold: 0.18 Accuracy: 0.7575757575757576 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 0.4864742212718533 AUROC: 0.8196530165841142 AUPRC: 0.6202167874806159 Sensitivity: 0.7490421455938697 Specificity: 0.7520585544373285 Threshold: 0.16 Accuracy: 0.7512630515325025 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.51381925214082 AUROC: 0.823139402333645 AUPRC: 0.6334850230036719 Sensitivity: 0.7563451776649747 Specificity: 0.7524613220815752 Threshold: 0.17 Accuracy: 0.7536015896671634 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.79it/s]
Loss: 0.4939687377022159 AUROC: 0.8160599671192157 AUPRC: 0.6149437839024318 Sensitivity: 0.7445721583652618 Specificity: 0.7415370539798719 Threshold: 0.15 Accuracy: 0.7423374873694847 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.5015361960977316 AUROC: 0.8179716373830618 AUPRC: 0.6200770936609458 Sensitivity: 0.7461928934010152 Specificity: 0.7440225035161744 Threshold: 0.2 Accuracy: 0.7446597118728266 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.4803028263712442 AUROC: 0.8110663586576135 AUPRC: 0.6008693897960992 Sensitivity: 0.7381864623243933 Specificity: 0.7415370539798719 Threshold: 0.18 Accuracy: 0.7406534186594813 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.5442142868414521 AUROC: 0.8216175116194392 AUPRC: 0.627621253075508 Sensitivity: 0.751269035532995 Specificity: 0.7517580872011251 Threshold: 0.14 Accuracy: 0.7516145057128664 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5203530254863924 AUROC: 0.8139843237880908 AUPRC: 0.6078077811311918 Sensitivity: 0.7452107279693486 Specificity: 0.7410795974382434 Threshold: 0.12 Accuracy: 0.7421690804984843 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 0.5549684911966324 AUROC: 0.807705122072532 AUPRC: 0.6037831376429488 Sensitivity: 0.7360406091370558 Specificity: 0.7376933895921237 Threshold: 0.14 Accuracy: 0.7372081470442127 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5292635821206595 AUROC: 0.8020044250010808 AUPRC: 0.5798216697894564 Sensitivity: 0.7381864623243933 Specificity: 0.7204940530649588 Threshold: 0.12 Accuracy: 0.7251599865274503 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.5126138981431723 AUROC: 0.8064021741975864 AUPRC: 0.5975482253281386 Sensitivity: 0.7428087986463621 Specificity: 0.7334739803094233 Threshold: 0.2 Accuracy: 0.736214605067064 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.48620362515731524 AUROC: 0.8016172228006156 AUPRC: 0.5799678656655446 Sensitivity: 0.731162196679438 Specificity: 0.7301006404391582 Threshold: 0.18 Accuracy: 0.7303805995284608 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.5209147669374943 AUROC: 0.8115247226922355 AUPRC: 0.6075423870829191 Sensitivity: 0.7360406091370558 Specificity: 0.7461322081575246 Threshold: 0.18 Accuracy: 0.7431693989071039 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.49481396489245916 AUROC: 0.8069042636351845 AUPRC: 0.5892823795227901 Sensitivity: 0.7305236270753512 Specificity: 0.7415370539798719 Threshold: 0.16 Accuracy: 0.7386325362074773 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 0.4899921305477619 AUROC: 0.8005775807292225 AUPRC: 0.5878309200861125 Sensitivity: 0.7309644670050761 Specificity: 0.7313642756680732 Threshold: 0.29 Accuracy: 0.7312468951813215 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.46556954262077166 AUROC: 0.798705684262677 AUPRC: 0.5714360235507607 Sensitivity: 0.7247765006385696 Specificity: 0.7355901189387009 Threshold: 0.27 Accuracy: 0.7327382957224655 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.5240099672228098 AUROC: 0.7988272279218755 AUPRC: 0.5867516084212901 Sensitivity: 0.7258883248730964 Specificity: 0.7334739803094233 Threshold: 0.19 Accuracy: 0.7312468951813215 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.4926510025416651 AUROC: 0.798347036581333 AUPRC: 0.5714562391345782 Sensitivity: 0.7318007662835249 Specificity: 0.7262122598353157 Threshold: 0.17 Accuracy: 0.7276860895924554 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.5139437224715948 AUROC: 0.7873101206327447 AUPRC: 0.5697554731634392 Sensitivity: 0.7309644670050761 Specificity: 0.7194092827004219 Threshold: 0.22 Accuracy: 0.7228017883755589 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.4861622867725229 AUROC: 0.7887083892739002 AUPRC: 0.5532743132333716 Sensitivity: 0.7183908045977011 Specificity: 0.7227813357731016 Threshold: 0.21 Accuracy: 0.7216234422364433 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 0.5121630094945431 AUROC: 0.799642314035426 AUPRC: 0.5882505323907611 Sensitivity: 0.727580372250423 Specificity: 0.7341772151898734 Threshold: 0.22 Accuracy: 0.73224043715847 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.4809680954423002 AUROC: 0.8006802548202365 AUPRC: 0.5777426301750687 Sensitivity: 0.7394636015325671 Specificity: 0.7271271729185728 Threshold: 0.19 Accuracy: 0.7303805995284608 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
Loss: 0.5323301404714584 AUROC: 0.7915676069309687 AUPRC: 0.5744611862006067 Sensitivity: 0.7258883248730964 Specificity: 0.7215189873417721 Threshold: 0.18 Accuracy: 0.7228017883755589 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.49965372793777013 AUROC: 0.793624732566115 AUPRC: 0.5650697883829984 Sensitivity: 0.722860791826309 Specificity: 0.7289569990850869 Threshold: 0.17 Accuracy: 0.7273492758504547 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
Loss: 0.5421406384557486 AUROC: 0.7925361910133484 AUPRC: 0.576225826607041 Sensitivity: 0.7326565143824028 Specificity: 0.7180028129395218 Threshold: 0.16 Accuracy: 0.7223050173869846 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5112465794688912 AUROC: 0.7950267521520322 AUPRC: 0.564877684511954 Sensitivity: 0.7292464878671775 Specificity: 0.727355901189387 Threshold: 0.15 Accuracy: 0.7278544964634557 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.5843841172754765 AUROC: 0.7935392823910463 AUPRC: 0.585236540776624 Sensitivity: 0.7309644670050761 Specificity: 0.7236286919831224 Threshold: 0.12 Accuracy: 0.7257824143070045 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.5483820813317453 AUROC: 0.7949987088391354 AUPRC: 0.5701278959468546 Sensitivity: 0.7222222222222222 Specificity: 0.7294144556267155 Threshold: 0.11 Accuracy: 0.727517682721455 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
Loss: 0.5308247655630112 AUROC: 0.7875373928191507 AUPRC: 0.5710311172985825 Sensitivity: 0.7343485617597293 Specificity: 0.7215189873417721 Threshold: 0.19 Accuracy: 0.7252856433184302 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.49840898186929766 AUROC: 0.7914342869228189 AUPRC: 0.5622593970161697 Sensitivity: 0.7177522349936143 Specificity: 0.7310155535224153 Threshold: 0.18 Accuracy: 0.727517682721455 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0039.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
Loss: 0.6272449670359492 AUROC: 0.7990985266574806 AUPRC: 0.5947030189521711 Sensitivity: 0.7225042301184433 Specificity: 0.7320675105485233 Threshold: 0.09 Accuracy: 0.7292598112270243 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5943436175584793 AUROC: 0.7997951377569322 AUPRC: 0.5799245215664144 Sensitivity: 0.7164750957854407 Specificity: 0.7390210430009149 Threshold: 0.08 Accuracy: 0.7330751094644662 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0040.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 0.6025278372690082 AUROC: 0.7849850428723397 AUPRC: 0.5719170347031931 Sensitivity: 0.7038917089678511 Specificity: 0.7264416315049227 Threshold: 0.12 Accuracy: 0.7198211624441133 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5639680814678951 AUROC: 0.7884811215922992 AUPRC: 0.556686150977479 Sensitivity: 0.7279693486590039 Specificity: 0.7152333028362305 Threshold: 0.1 Accuracy: 0.7185921185584372 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0041.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.5517349382862449 AUROC: 0.7716116810764373 AUPRC: 0.5440028837725343 Sensitivity: 0.7140439932318104 Specificity: 0.7011251758087201 Threshold: 0.19 Accuracy: 0.7049180327868853 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5101440542487687 AUROC: 0.7785403514060799 AUPRC: 0.5373807732876706 Sensitivity: 0.7183908045977011 Specificity: 0.7118023787740164 Threshold: 0.18 Accuracy: 0.7135399124284271 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0042.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.5656858999282122 AUROC: 0.7767663570529342 AUPRC: 0.5560761316346396 Sensitivity: 0.7140439932318104 Specificity: 0.7130801687763713 Threshold: 0.16 Accuracy: 0.7133631395926477 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.79it/s]
Loss: 0.523279151288412 AUROC: 0.7849165536170616 AUPRC: 0.5498062352972382 Sensitivity: 0.7177522349936143 Specificity: 0.722323879231473 Threshold: 0.15 Accuracy: 0.7211182216234422 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0043.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.5926492214202881 AUROC: 0.7802920507090654 AUPRC: 0.5602876512522996 Sensitivity: 0.7241962774957699 Specificity: 0.7081575246132208 Threshold: 0.12 Accuracy: 0.7128663686040735 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.552250950887639 AUROC: 0.7867869841637075 AUPRC: 0.5566191877868146 Sensitivity: 0.722860791826309 Specificity: 0.7111161939615737 Threshold: 0.11 Accuracy: 0.7142135399124284 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0044.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.6108083492144942 AUROC: 0.782496352935857 AUPRC: 0.5668504349585957 Sensitivity: 0.7055837563451777 Specificity: 0.7208157524613221 Threshold: 0.12 Accuracy: 0.7163437655240934 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.562609393269785 AUROC: 0.789607527993653 AUPRC: 0.5615261031655878 Sensitivity: 0.7298850574712644 Specificity: 0.7134034766697164 Threshold: 0.1 Accuracy: 0.7177500842034354 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0045.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 0.6430441159754992 AUROC: 0.7758899907425256 AUPRC: 0.5584158183934155 Sensitivity: 0.700507614213198 Specificity: 0.7180028129395218 Threshold: 0.1 Accuracy: 0.7128663686040735 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5917022255479648 AUROC: 0.784009235597714 AUPRC: 0.5522722464487527 Sensitivity: 0.7068965517241379 Specificity: 0.7271271729185728 Threshold: 0.09 Accuracy: 0.7217918491074435 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0046.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.5811036620289087 AUROC: 0.7715022096568072 AUPRC: 0.5473066171405718 Sensitivity: 0.7157360406091371 Specificity: 0.7025316455696202 Threshold: 0.15 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 0.5353839209964198 AUROC: 0.7817654784481297 AUPRC: 0.5473197480158449 Sensitivity: 0.719029374201788 Specificity: 0.7095150960658737 Threshold: 0.14 Accuracy: 0.7120242505894241 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0047.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.6544046988710761 AUROC: 0.7724910221536836 AUPRC: 0.5554377939915419 Sensitivity: 0.700507614213198 Specificity: 0.7081575246132208 Threshold: 0.09 Accuracy: 0.7059115747640338 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.6014090199624339 AUROC: 0.7826773242940388 AUPRC: 0.5497339207248355 Sensitivity: 0.7164750957854407 Specificity: 0.7138609332113449 Threshold: 0.08 Accuracy: 0.7145503536544291 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0048.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.6247539445757866 AUROC: 0.7539784531688406 AUPRC: 0.5274559951846263 Sensitivity: 0.6818950930626058 Specificity: 0.6919831223628692 Threshold: 0.12 Accuracy: 0.6890213611525087 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.48it/s]
Loss: 0.5728384453442789 AUROC: 0.7696760354701169 AUPRC: 0.5272330650486485 Sensitivity: 0.7094508301404853 Specificity: 0.694647758462946 Threshold: 0.11 Accuracy: 0.6985517009093971 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0049.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 0.6242374014109373 AUROC: 0.768139533223386 AUPRC: 0.5501587599863417 Sensitivity: 0.700507614213198 Specificity: 0.7109704641350211 Threshold: 0.12 Accuracy: 0.7078986587183308 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.5725424015714277 AUROC: 0.779989109846825 AUPRC: 0.5461560278181715 Sensitivity: 0.7183908045977011 Specificity: 0.7035681610247027 Threshold: 0.1 Accuracy: 0.7074772650724149 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0050.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.6334585659205914 AUROC: 0.7529789315113481 AUPRC: 0.5270283764472491 Sensitivity: 0.6988155668358714 Specificity: 0.6884669479606188 Threshold: 0.12 Accuracy: 0.6915052160953801 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 0.5739968451120521 AUROC: 0.7687387753718953 AUPRC: 0.527102063321575 Sensitivity: 0.7100893997445722 Specificity: 0.7017383348581885 Threshold: 0.11 Accuracy: 0.7039407207814079 Intermediate Model: ./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0051.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 0.590881654061377 AUROC: 0.7575838705762242 AUPRC: 0.5303965743738919 Sensitivity: 0.6988155668358714 Specificity: 0.6954992967651196 Threshold: 0.18 Accuracy: 0.6964729259811226 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5407130710219824 AUROC: 0.7713088281517471 AUPRC: 0.529141321659217 Sensitivity: 0.7017879948914432 Specificity: 0.7053979871912168 Threshold: 0.17 Accuracy: 0.7044459413944089 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 31, 0.4871 Epoch with best model Test AUROC: 4, 0.8373 Epoch with best model Test Accuracy: 3, 0.7663
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 31, 0.4871
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0031.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.79it/s]
Loss: 0.46556954262077166 AUROC: 0.798705684262677 AUPRC: 0.5714360235507607 Sensitivity: 0.7247765006385696 Specificity: 0.7355901189387009 Threshold: 0.27 Accuracy: 0.7327382957224655
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.798705684262677
best_model_val_test_auprc: 0.5714360235507607
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 4, 0.8373
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_0fb62fdb_0004.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 0.5891154126454425 AUROC: 0.8372792611521829 AUPRC: 0.6857379279683231 Sensitivity: 0.7739463601532567 Specificity: 0.7442817932296432 Threshold: 0.08 Accuracy: 0.7521050858875042
best_model_auroc_test_auroc: 0.8372792611521829
best_model_auroc_test_auprc: 0.6857379279683231 Total Processing Time: 4790.1680 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 02:52:22.800590] Completed epoch 0 with training loss 0.47094715, validation loss 0.61228812 Validation loss improved to 0.61228812. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 02:53:15.172114] Completed epoch 1 with training loss 0.43698177, validation loss 0.58030427 Validation loss improved to 0.58030427. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
[2024-05-03 02:54:07.634469] Completed epoch 2 with training loss 0.43396798, validation loss 0.62187839 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 02:54:59.939370] Completed epoch 3 with training loss 0.43051592, validation loss 0.55480528 Validation loss improved to 0.55480528. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 02:55:52.466009] Completed epoch 4 with training loss 0.42716342, validation loss 0.68283755 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
[2024-05-03 02:56:45.177042] Completed epoch 5 with training loss 0.42502698, validation loss 0.62173164 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 02:57:37.901098] Completed epoch 6 with training loss 0.42439792, validation loss 0.48504674 Validation loss improved to 0.48504674. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.07it/s]
[2024-05-03 02:58:30.167006] Completed epoch 7 with training loss 0.42126188, validation loss 0.56092966 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 02:59:22.450912] Completed epoch 8 with training loss 0.42089719, validation loss 0.63100493 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:00:14.817962] Completed epoch 9 with training loss 0.41859645, validation loss 0.52102220 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 03:01:07.125576] Completed epoch 10 with training loss 0.41986299, validation loss 0.51443505 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:01:59.388610] Completed epoch 11 with training loss 0.41404277, validation loss 0.51546949 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:02:51.879999] Completed epoch 12 with training loss 0.41332850, validation loss 0.53834069 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:03:44.130651] Completed epoch 13 with training loss 0.41375905, validation loss 0.50081015 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:04:36.565421] Completed epoch 14 with training loss 0.40920693, validation loss 0.53587258 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:05:28.881313] Completed epoch 15 with training loss 0.41131002, validation loss 0.50954366 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:06:21.237376] Completed epoch 16 with training loss 0.41109231, validation loss 0.50710815 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:07:13.581509] Completed epoch 17 with training loss 0.40680569, validation loss 0.55674303 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
[2024-05-03 03:08:06.008008] Completed epoch 18 with training loss 0.40583810, validation loss 0.52272755 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:08:58.346380] Completed epoch 19 with training loss 0.40434310, validation loss 0.51317143 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:09:51.232348] Completed epoch 20 with training loss 0.40160140, validation loss 0.58531272 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.07it/s]
[2024-05-03 03:10:43.662700] Completed epoch 21 with training loss 0.40186045, validation loss 0.52125788 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:11:35.954002] Completed epoch 22 with training loss 0.40074033, validation loss 0.53144842 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 03:12:28.823694] Completed epoch 23 with training loss 0.39959353, validation loss 0.52643806 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:13:21.073484] Completed epoch 24 with training loss 0.39566097, validation loss 0.48247308 Validation loss improved to 0.48247308. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:14:13.407913] Completed epoch 25 with training loss 0.39813271, validation loss 0.52576733 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:15:05.739067] Completed epoch 26 with training loss 0.39708182, validation loss 0.54962599 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:15:58.138780] Completed epoch 27 with training loss 0.39321962, validation loss 0.59714377 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.88it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:16:51.904338] Completed epoch 28 with training loss 0.39376301, validation loss 0.55135620 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:17:44.191487] Completed epoch 29 with training loss 0.39479926, validation loss 0.49717957 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:18:36.555504] Completed epoch 30 with training loss 0.39165622, validation loss 0.51184034 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 03:19:28.946801] Completed epoch 31 with training loss 0.38915032, validation loss 0.55825746 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.58it/s]
[2024-05-03 03:20:21.880817] Completed epoch 32 with training loss 0.38998836, validation loss 0.57712489 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:21:14.339279] Completed epoch 33 with training loss 0.38774937, validation loss 0.54212660 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
[2024-05-03 03:22:06.762747] Completed epoch 34 with training loss 0.38767210, validation loss 0.53990579 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:22:59.034545] Completed epoch 35 with training loss 0.38288391, validation loss 0.56974626 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:23:51.331309] Completed epoch 36 with training loss 0.38343951, validation loss 0.53679043 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 03:24:43.786797] Completed epoch 37 with training loss 0.38275918, validation loss 0.55572361 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:25:36.059442] Completed epoch 38 with training loss 0.38067132, validation loss 0.54518485 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:26:28.413245] Completed epoch 39 with training loss 0.37698165, validation loss 0.55819064 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:27:20.734157] Completed epoch 40 with training loss 0.37850198, validation loss 0.52254260 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 03:28:13.448135] Completed epoch 41 with training loss 0.37696680, validation loss 0.61698711 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 03:29:05.900960] Completed epoch 42 with training loss 0.37701660, validation loss 0.54172587 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:29:58.906131] Completed epoch 43 with training loss 0.37491700, validation loss 0.55953979 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 03:30:51.298296] Completed epoch 44 with training loss 0.37407917, validation loss 0.52590048 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 24, 0.4825
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 5.65it/s]
Loss: 0.6101355627179146 AUROC: 0.8434975166646439 AUPRC: 0.695856896779709 Sensitivity: 0.7529610829103215 Specificity: 0.7728551336146273 Threshold: 0.12 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5698892704902156 AUROC: 0.8320540762708004 AUPRC: 0.6762684350854661 Sensitivity: 0.776500638569604 Specificity: 0.734903934126258 Threshold: 0.11 Accuracy: 0.7458740316604917 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.20it/s]
Loss: 0.5808036113157868 AUROC: 0.8443340210994262 AUPRC: 0.7017747397079107 Sensitivity: 0.7681895093062606 Specificity: 0.7658227848101266 Threshold: 0.12 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5463852781441904 AUROC: 0.8349504977103804 AUPRC: 0.6832693347463318 Sensitivity: 0.7426564495530013 Specificity: 0.7772186642268984 Threshold: 0.12 Accuracy: 0.7681037386325362 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6188745107501745 AUROC: 0.8439092243949919 AUPRC: 0.7038522596473498 Sensitivity: 0.7614213197969543 Specificity: 0.7693389592123769 Threshold: 0.09 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.94it/s]
Loss: 0.5845235376268305 AUROC: 0.8356721018112475 AUPRC: 0.685793946262318 Sensitivity: 0.743933588761175 Specificity: 0.7774473924977127 Threshold: 0.09 Accuracy: 0.7686089592455372 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.01it/s]
Loss: 0.5594642832875252 AUROC: 0.8444994181356065 AUPRC: 0.7036180263074421 Sensitivity: 0.7580372250423012 Specificity: 0.770745428973277 Threshold: 0.13 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5263452331225077 AUROC: 0.8364290521710781 AUPRC: 0.6859264841317675 Sensitivity: 0.7669220945083014 Specificity: 0.7532021957913998 Threshold: 0.12 Accuracy: 0.7568204782755137 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6887757051736116 AUROC: 0.8445969904878855 AUPRC: 0.7051873753968106 Sensitivity: 0.7563451776649747 Specificity: 0.770042194092827 Threshold: 0.06 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.6475222804533538 AUROC: 0.8365605052002818 AUPRC: 0.6867500180052803 Sensitivity: 0.7413793103448276 Specificity: 0.7785910338517841 Threshold: 0.06 Accuracy: 0.7687773661165376 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6148317214101553 AUROC: 0.8442138405191799 AUPRC: 0.7031469682887265 Sensitivity: 0.7715736040609137 Specificity: 0.7538677918424754 Threshold: 0.08 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5854584542653893 AUROC: 0.8360076721830201 AUPRC: 0.6844581964482671 Sensitivity: 0.7573435504469987 Specificity: 0.7614364135407137 Threshold: 0.08 Accuracy: 0.7603570225665207 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.4914833512157202 AUROC: 0.8416198438366401 AUPRC: 0.6958998477313448 Sensitivity: 0.7766497461928934 Specificity: 0.7559774964838256 Threshold: 0.22 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.4657003677660419 AUROC: 0.8334311197811688 AUPRC: 0.6778288458325537 Sensitivity: 0.7656449553001277 Specificity: 0.7486276303751144 Threshold: 0.21 Accuracy: 0.7531155271135063 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.5581374727189541 AUROC: 0.8440329746954435 AUPRC: 0.69708905784915 Sensitivity: 0.7732656514382402 Specificity: 0.7566807313642757 Threshold: 0.12 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5312457959498128 AUROC: 0.8360376142618942 AUPRC: 0.6819208987299442 Sensitivity: 0.7528735632183908 Specificity: 0.7708142726440989 Threshold: 0.12 Accuracy: 0.7660828561805322 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6266479920595884 AUROC: 0.8430001356493678 AUPRC: 0.697911298916922 Sensitivity: 0.7766497461928934 Specificity: 0.750351617440225 Threshold: 0.08 Accuracy: 0.7580725285643318 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5933536364827104 AUROC: 0.8358078635786305 AUPRC: 0.6813402983670921 Sensitivity: 0.7611749680715197 Specificity: 0.7607502287282708 Threshold: 0.08 Accuracy: 0.7608622431795218 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.520869929343462 AUROC: 0.8414104202512606 AUPRC: 0.6892261574074118 Sensitivity: 0.7681895093062606 Specificity: 0.7587904360056259 Threshold: 0.17 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.4933055035209143 AUROC: 0.8337301754226069 AUPRC: 0.6715719168018046 Sensitivity: 0.7662835249042146 Specificity: 0.7518298261665142 Threshold: 0.16 Accuracy: 0.7556416301785113 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
Loss: 0.5133786406368017 AUROC: 0.839015137993484 AUPRC: 0.6880893846277897 Sensitivity: 0.7563451776649747 Specificity: 0.7693389592123769 Threshold: 0.18 Accuracy: 0.7655240933929458 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.48889950847113006 AUROC: 0.8325136506667881 AUPRC: 0.6711349022500124 Sensitivity: 0.756066411238825 Specificity: 0.7568618481244281 Threshold: 0.17 Accuracy: 0.7566520714045133 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.518339148722589 AUROC: 0.8394708722730313 AUPRC: 0.6859153191084193 Sensitivity: 0.7698815566835872 Specificity: 0.7587904360056259 Threshold: 0.17 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.49395838379859924 AUROC: 0.8325615579929868 AUPRC: 0.670272006096885 Sensitivity: 0.7675606641123882 Specificity: 0.7481701738334858 Threshold: 0.16 Accuracy: 0.7532839339845065 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
Loss: 0.5404798742383718 AUROC: 0.8401384099514281 AUPRC: 0.6858116013075735 Sensitivity: 0.766497461928934 Specificity: 0.7623066104078763 Threshold: 0.14 Accuracy: 0.7635370094386488 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.96it/s]
Loss: 0.513706670493208 AUROC: 0.833293313188887 AUPRC: 0.6721372210093274 Sensitivity: 0.7701149425287356 Specificity: 0.7472552607502287 Threshold: 0.13 Accuracy: 0.7532839339845065 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.5041192369535565 AUROC: 0.8381703042115559 AUPRC: 0.6772486716537414 Sensitivity: 0.7580372250423012 Specificity: 0.770745428973277 Threshold: 0.2 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.47952803536768884 AUROC: 0.8313620491015041 AUPRC: 0.6652886015509288 Sensitivity: 0.756066411238825 Specificity: 0.7607502287282708 Threshold: 0.19 Accuracy: 0.7595149882115191 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.5316373780369759 AUROC: 0.8392888165425595 AUPRC: 0.6764651657763411 Sensitivity: 0.7614213197969543 Specificity: 0.7686357243319268 Threshold: 0.15 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5063928008399984 AUROC: 0.8329329858299477 AUPRC: 0.6674316330699301 Sensitivity: 0.7579821200510856 Specificity: 0.7639524245196706 Threshold: 0.14 Accuracy: 0.7623779050185248 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.5091555025428534 AUROC: 0.8388830583458868 AUPRC: 0.6727040399790881 Sensitivity: 0.7732656514382402 Specificity: 0.7637130801687764 Threshold: 0.17 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.48630453646183014 AUROC: 0.8319318979831015 AUPRC: 0.6634965004365173 Sensitivity: 0.7624521072796935 Specificity: 0.7568618481244281 Threshold: 0.16 Accuracy: 0.7583361401145167 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5048929313197732 AUROC: 0.8381429363566483 AUPRC: 0.669697288223973 Sensitivity: 0.7631133671742809 Specificity: 0.770745428973277 Threshold: 0.18 Accuracy: 0.7685047193243915 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.94it/s]
Loss: 0.48352465177735976 AUROC: 0.8313202032205408 AUPRC: 0.6634402143111997 Sensitivity: 0.7669220945083014 Specificity: 0.7513723696248856 Threshold: 0.16 Accuracy: 0.755473223307511 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.5575045375153422 AUROC: 0.8370410827199364 AUPRC: 0.666743699360096 Sensitivity: 0.7580372250423012 Specificity: 0.7672292545710268 Threshold: 0.13 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5282872913665669 AUROC: 0.8312710543935107 AUPRC: 0.6592310126101462 Sensitivity: 0.756066411238825 Specificity: 0.7591491308325709 Threshold: 0.12 Accuracy: 0.7583361401145167 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.5196538157761097 AUROC: 0.835576307529016 AUPRC: 0.6601908620093747 Sensitivity: 0.7614213197969543 Specificity: 0.7644163150492265 Threshold: 0.16 Accuracy: 0.7635370094386488 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.49547193800249406 AUROC: 0.8302668262798558 AUPRC: 0.6569843938159027 Sensitivity: 0.7528735632183908 Specificity: 0.7621225983531564 Threshold: 0.15 Accuracy: 0.7596833950825194 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5079067153856158 AUROC: 0.832884738494197 AUPRC: 0.6504317962721005 Sensitivity: 0.7648054145516074 Specificity: 0.7510548523206751 Threshold: 0.17 Accuracy: 0.7550919026328863 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.48543493641961005 AUROC: 0.8277106490975311 AUPRC: 0.6481363348138288 Sensitivity: 0.7662835249042146 Specificity: 0.7451967063129002 Threshold: 0.16 Accuracy: 0.7507578309195015 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.5883653573691845 AUROC: 0.8360689289173514 AUPRC: 0.6664501608629404 Sensitivity: 0.7631133671742809 Specificity: 0.7616033755274262 Threshold: 0.1 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.555440770041558 AUROC: 0.8308926157283257 AUPRC: 0.6603362333961589 Sensitivity: 0.7650063856960408 Specificity: 0.7477127172918573 Threshold: 0.09 Accuracy: 0.7522734927585045 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.93it/s]
Loss: 0.5217627193778753 AUROC: 0.8317543270958421 AUPRC: 0.6535891787694574 Sensitivity: 0.7580372250423012 Specificity: 0.7538677918424754 Threshold: 0.15 Accuracy: 0.7550919026328863 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.49619566609141647 AUROC: 0.8271334242404059 AUPRC: 0.6491880411255395 Sensitivity: 0.7586206896551724 Specificity: 0.7479414455626715 Threshold: 0.14 Accuracy: 0.7507578309195015 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.5272159725427628 AUROC: 0.8324539922560871 AUPRC: 0.6532368192629198 Sensitivity: 0.7495769881556683 Specificity: 0.7566807313642757 Threshold: 0.15 Accuracy: 0.754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.499032300326132 AUROC: 0.8269972973257195 AUPRC: 0.6487662281069777 Sensitivity: 0.7515964240102171 Specificity: 0.7513723696248856 Threshold: 0.14 Accuracy: 0.7514314584035029 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.5290951859205961 AUROC: 0.8295934564648823 AUPRC: 0.6448438094790141 Sensitivity: 0.7580372250423012 Specificity: 0.7510548523206751 Threshold: 0.15 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.49941013705345894 AUROC: 0.8246190199095838 AUPRC: 0.6427656730035359 Sensitivity: 0.7573435504469987 Specificity: 0.742451967063129 Threshold: 0.14 Accuracy: 0.7463792522734928 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.4867169288918376 AUROC: 0.8266377281348688 AUPRC: 0.63974427985106 Sensitivity: 0.7461928934010152 Specificity: 0.7587904360056259 Threshold: 0.22 Accuracy: 0.7550919026328863 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.4633105379599397 AUROC: 0.8215328679311864 AUPRC: 0.6359079438435626 Sensitivity: 0.7547892720306514 Specificity: 0.742451967063129 Threshold: 0.2 Accuracy: 0.7457056247894914 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.5235918704420328 AUROC: 0.827181515512814 AUPRC: 0.6391229995021879 Sensitivity: 0.7631133671742809 Specificity: 0.7447257383966245 Threshold: 0.15 Accuracy: 0.7501241927471436 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.49682915755497514 AUROC: 0.822831185682954 AUPRC: 0.6368047136232587 Sensitivity: 0.7407407407407407 Specificity: 0.7596065873741995 Threshold: 0.15 Accuracy: 0.7546311889525092 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5559361949563026 AUROC: 0.8293257274494825 AUPRC: 0.6444829114612721 Sensitivity: 0.766497461928934 Specificity: 0.749648382559775 Threshold: 0.12 Accuracy: 0.754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5219385772943497 AUROC: 0.8243371261914026 AUPRC: 0.6416607679323537 Sensitivity: 0.7452107279693486 Specificity: 0.7589204025617566 Threshold: 0.12 Accuracy: 0.7553048164365106 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.59301130566746 AUROC: 0.8282333930666514 AUPRC: 0.6408964034738058 Sensitivity: 0.7478849407783418 Specificity: 0.7573839662447257 Threshold: 0.1 Accuracy: 0.754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.5609023031047595 AUROC: 0.8226444493520242 AUPRC: 0.6380275609015812 Sensitivity: 0.7535121328224776 Specificity: 0.744053064958829 Threshold: 0.09 Accuracy: 0.7465476591444931 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5536226183176041 AUROC: 0.8255334946846866 AUPRC: 0.6381118761999424 Sensitivity: 0.7648054145516074 Specificity: 0.7426160337552743 Threshold: 0.12 Accuracy: 0.7491306507699951 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5222321809619985 AUROC: 0.8216351822055831 AUPRC: 0.6388820353190934 Sensitivity: 0.7445721583652618 Specificity: 0.7543458371454712 Threshold: 0.12 Accuracy: 0.7517682721455036 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.49720275215804577 AUROC: 0.8188236106054009 AUPRC: 0.6197629118682718 Sensitivity: 0.7461928934010152 Specificity: 0.7559774964838256 Threshold: 0.21 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.4704400578173258 AUROC: 0.8139945479125844 AUPRC: 0.6202086018175118 Sensitivity: 0.7318007662835249 Specificity: 0.7520585544373285 Threshold: 0.2 Accuracy: 0.7467160660154935 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.512459141202271 AUROC: 0.8126908312926432 AUPRC: 0.6116172886533497 Sensitivity: 0.7478849407783418 Specificity: 0.7320675105485233 Threshold: 0.18 Accuracy: 0.7367113760556383 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.96it/s]
Loss: 0.4830471778749138 AUROC: 0.8104816847955 AUPRC: 0.6136977516125358 Sensitivity: 0.7273307790549169 Specificity: 0.7472552607502287 Threshold: 0.18 Accuracy: 0.742000673627484 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.553742915391922 AUROC: 0.8224635353081026 AUPRC: 0.6330680398522384 Sensitivity: 0.7461928934010152 Specificity: 0.7623066104078763 Threshold: 0.13 Accuracy: 0.7575757575757576 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.5194363143815789 AUROC: 0.8191622586084207 AUPRC: 0.6336712306770148 Sensitivity: 0.7413793103448276 Specificity: 0.7527447392497713 Threshold: 0.12 Accuracy: 0.7497473896934995 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5836970824748278 AUROC: 0.8143055347321877 AUPRC: 0.6171738570178262 Sensitivity: 0.7529610829103215 Specificity: 0.7341772151898734 Threshold: 0.11 Accuracy: 0.739692001987084 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5425226093940837 AUROC: 0.8120645983554934 AUPRC: 0.6173889665187194 Sensitivity: 0.7337164750957854 Specificity: 0.744967978042086 Threshold: 0.11 Accuracy: 0.742000673627484 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5364847844466567 AUROC: 0.8103122077291581 AUPRC: 0.6067258304249864 Sensitivity: 0.751269035532995 Specificity: 0.7362869198312236 Threshold: 0.15 Accuracy: 0.7406855439642325 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5044095556261718 AUROC: 0.8075894260351779 AUPRC: 0.6067844189752694 Sensitivity: 0.7458492975734355 Specificity: 0.7296431838975297 Threshold: 0.14 Accuracy: 0.7339171438194678 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.545304749161005 AUROC: 0.8128609879557641 AUPRC: 0.6100207829479387 Sensitivity: 0.751269035532995 Specificity: 0.7306610407876231 Threshold: 0.14 Accuracy: 0.7367113760556383 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5101205197072798 AUROC: 0.8091160338809958 AUPRC: 0.6114067983710492 Sensitivity: 0.7292464878671775 Specificity: 0.7438243366880146 Threshold: 0.14 Accuracy: 0.73997979117548 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
Loss: 0.571790112182498 AUROC: 0.8117662737594629 AUPRC: 0.6142136646301545 Sensitivity: 0.7377326565143824 Specificity: 0.7376933895921237 Threshold: 0.12 Accuracy: 0.7377049180327869 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5313834626508015 AUROC: 0.8099377613724397 AUPRC: 0.6151631222967712 Sensitivity: 0.7503192848020435 Specificity: 0.7259835315645013 Threshold: 0.11 Accuracy: 0.7324014819804648 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.01it/s]
Loss: 0.5385623443871737 AUROC: 0.8154811625864766 AUPRC: 0.6210948356255034 Sensitivity: 0.7428087986463621 Specificity: 0.7454289732770746 Threshold: 0.14 Accuracy: 0.7446597118728266 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5084809213876724 AUROC: 0.8130606471695534 AUPRC: 0.6209855482375385 Sensitivity: 0.7426564495530013 Specificity: 0.7419945105215004 Threshold: 0.13 Accuracy: 0.7421690804984843 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.559109921567142 AUROC: 0.8127384275620477 AUPRC: 0.6144733455630634 Sensitivity: 0.7360406091370558 Specificity: 0.7447257383966245 Threshold: 0.13 Accuracy: 0.7421758569299552 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.5211192335813276 AUROC: 0.8098688215615685 AUPRC: 0.6150208961692049 Sensitivity: 0.7432950191570882 Specificity: 0.7376486733760292 Threshold: 0.12 Accuracy: 0.7391377568204782 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5417888509109616 AUROC: 0.8128217210335056 AUPRC: 0.6156575110424463 Sensitivity: 0.7309644670050761 Specificity: 0.7433192686357243 Threshold: 0.14 Accuracy: 0.739692001987084 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.509077093614045 AUROC: 0.8095432562259075 AUPRC: 0.6166316792519284 Sensitivity: 0.7381864623243933 Specificity: 0.7410795974382434 Threshold: 0.13 Accuracy: 0.7403166049174806 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0039.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5642576860263944 AUROC: 0.8083072148804976 AUPRC: 0.6106183725566844 Sensitivity: 0.7377326565143824 Specificity: 0.729254571026723 Threshold: 0.12 Accuracy: 0.7317436661698957 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5268486659693462 AUROC: 0.806094805093133 AUPRC: 0.6117236089007423 Sensitivity: 0.7273307790549169 Specificity: 0.742451967063129 Threshold: 0.12 Accuracy: 0.738464129336477 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0040.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.5200430816039443 AUROC: 0.8085927924969241 AUPRC: 0.609434075492504 Sensitivity: 0.7292724196277496 Specificity: 0.7369901547116737 Threshold: 0.17 Accuracy: 0.7347242921013413 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.4879892438009221 AUROC: 0.8054807733878309 AUPRC: 0.6103772122787999 Sensitivity: 0.7330779054916986 Specificity: 0.7371912168344007 Threshold: 0.16 Accuracy: 0.7361064331424723 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0041.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.6101553980261087 AUROC: 0.8102384335115813 AUPRC: 0.6143541897529086 Sensitivity: 0.7360406091370558 Specificity: 0.7468354430379747 Threshold: 0.09 Accuracy: 0.7436661698956781 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.86it/s]
Loss: 0.5766774755652233 AUROC: 0.806139572152523 AUPRC: 0.6119249825634597 Sensitivity: 0.7337164750957854 Specificity: 0.7319304666056725 Threshold: 0.08 Accuracy: 0.7324014819804648 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0042.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.548278234899044 AUROC: 0.798659451072225 AUPRC: 0.5960013669081141 Sensitivity: 0.7208121827411168 Specificity: 0.7320675105485233 Threshold: 0.15 Accuracy: 0.7287630402384501 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5093564081897017 AUROC: 0.7973973614747979 AUPRC: 0.5960359224955111 Sensitivity: 0.7286079182630907 Specificity: 0.7259835315645013 Threshold: 0.14 Accuracy: 0.7266756483664534 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0043.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.5554710384458303 AUROC: 0.8061856111717964 AUPRC: 0.6063713443347365 Sensitivity: 0.727580372250423 Specificity: 0.7440225035161744 Threshold: 0.13 Accuracy: 0.7391952309985097 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.5211678421305072 AUROC: 0.8045826570805276 AUPRC: 0.6092860794836935 Sensitivity: 0.7318007662835249 Specificity: 0.7394784995425434 Threshold: 0.12 Accuracy: 0.737453688110475 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0044.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.94it/s]
Loss: 0.5293287187814713 AUROC: 0.8002717746982991 AUPRC: 0.6024061165974506 Sensitivity: 0.7309644670050761 Specificity: 0.7376933895921237 Threshold: 0.17 Accuracy: 0.7357178340784898 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.49146804341705896 AUROC: 0.8022373889806139 AUPRC: 0.6071014592502775 Sensitivity: 0.7381864623243933 Specificity: 0.7287282708142726 Threshold: 0.16 Accuracy: 0.7312226338834624 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 24, 0.4825 Epoch with best model Test AUROC: 4, 0.8366 Epoch with best model Test Accuracy: 4, 0.7688
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 24, 0.4825
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0024.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.4633105379599397 AUROC: 0.8215328679311864 AUPRC: 0.6359079438435626 Sensitivity: 0.7547892720306514 Specificity: 0.742451967063129 Threshold: 0.2 Accuracy: 0.7457056247894914
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.8215328679311864
best_model_val_test_auprc: 0.6359079438435626
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 4, 0.8366
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_3914bdd4_0004.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.6475222804533538 AUROC: 0.8365605052002818 AUPRC: 0.6867500180052803 Sensitivity: 0.7413793103448276 Specificity: 0.7785910338517841 Threshold: 0.06 Accuracy: 0.7687773661165376
best_model_auroc_test_auroc: 0.8365605052002818
best_model_auroc_test_auprc: 0.6867500180052803 Total Processing Time: 3573.9110 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=False,
useEeg=True,
useEcg=True,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726
prediction_window: 003
max_cases: _ALL
use_abp: False
use_eeg: True
use_ecg: True
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(ecgResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(ecgFc): Linear(in_features=2814, out_features=32, bias=True)
(eegResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
)
(eegFc): Linear(in_features=720, out_features=32, bias=True)
(fullLinear1): Linear(in_features=64, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 03:52:00.039159] Completed epoch 0 with training loss 0.59752339, validation loss 0.60446572 Validation loss improved to 0.60446572. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 03:52:56.011384] Completed epoch 1 with training loss 0.58981180, validation loss 0.60569537 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 03:53:51.805700] Completed epoch 2 with training loss 0.58492351, validation loss 0.60474491 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 03:54:47.755279] Completed epoch 3 with training loss 0.58103985, validation loss 0.60425866 Validation loss improved to 0.60425866. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
[2024-05-03 03:55:43.744785] Completed epoch 4 with training loss 0.57823664, validation loss 0.60111493 Validation loss improved to 0.60111493. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
[2024-05-03 03:56:39.568612] Completed epoch 5 with training loss 0.57633722, validation loss 0.61193144 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
[2024-05-03 03:57:35.402205] Completed epoch 6 with training loss 0.57332313, validation loss 0.60842299 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 03:58:31.303208] Completed epoch 7 with training loss 0.56968081, validation loss 0.60568798 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 03:59:27.075296] Completed epoch 8 with training loss 0.56690180, validation loss 0.60567802 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.93it/s]
[2024-05-03 04:00:22.944191] Completed epoch 9 with training loss 0.56599033, validation loss 0.61000907 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
[2024-05-03 04:01:18.863537] Completed epoch 10 with training loss 0.56422466, validation loss 0.60700494 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 04:02:14.655061] Completed epoch 11 with training loss 0.56026715, validation loss 0.60554606 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.94it/s]
[2024-05-03 04:03:10.432193] Completed epoch 12 with training loss 0.55976671, validation loss 0.60867381 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
[2024-05-03 04:04:06.277188] Completed epoch 13 with training loss 0.55672330, validation loss 0.60835248 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.75it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.93it/s]
[2024-05-03 04:05:01.929153] Completed epoch 14 with training loss 0.55752522, validation loss 0.61450040 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.93it/s]
[2024-05-03 04:05:57.632324] Completed epoch 15 with training loss 0.55494165, validation loss 0.61390901 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.93it/s]
[2024-05-03 04:06:53.469087] Completed epoch 16 with training loss 0.55211133, validation loss 0.61895913 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.75it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.93it/s]
[2024-05-03 04:07:49.050041] Completed epoch 17 with training loss 0.55145013, validation loss 0.61590576 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.93it/s]
[2024-05-03 04:08:44.868394] Completed epoch 18 with training loss 0.55131060, validation loss 0.62177539 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.69it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 04:09:41.324046] Completed epoch 19 with training loss 0.54795086, validation loss 0.63049495 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.74it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 04:10:37.095537] Completed epoch 20 with training loss 0.54894853, validation loss 0.61979634 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
[2024-05-03 04:11:33.028600] Completed epoch 21 with training loss 0.54570287, validation loss 0.62323654 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:50<00:00, 3.67it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 04:12:29.885277] Completed epoch 22 with training loss 0.54510939, validation loss 0.64087141 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.70it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
[2024-05-03 04:13:26.255369] Completed epoch 23 with training loss 0.54403967, validation loss 0.63174945 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.73it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
[2024-05-03 04:14:22.229795] Completed epoch 24 with training loss 0.54338151, validation loss 0.62941051 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 4, 0.6011
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 5.47it/s]
Loss: 0.6044713221490383 AUROC: 0.5309756521283862 AUPRC: 0.3239351775294558 Sensitivity: 0.5228426395939086 Specificity: 0.4936708860759494 Threshold: 0.3 Accuracy: 0.5022354694485842 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5820828339745922 AUROC: 0.5220458414688153 AUPRC: 0.2811652383648239 Sensitivity: 0.5676883780332056 Specificity: 0.46431838975297346 Threshold: 0.3 Accuracy: 0.49157965644998314 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.6051097689196467 AUROC: 0.5347173138569399 AUPRC: 0.32809751967375855 Sensitivity: 0.5617597292724196 Specificity: 0.47538677918424754 Threshold: 0.3 Accuracy: 0.5007451564828614 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.91it/s]
Loss: 0.5809668837695994 AUROC: 0.5256873824955979 AUPRC: 0.2836898087907197 Sensitivity: 0.5881226053639846 Specificity: 0.44967978042086004 Threshold: 0.3 Accuracy: 0.4861906365779724 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
Loss: 0.6028058901429176 AUROC: 0.541877577635465 AUPRC: 0.3319942955492473 Sensitivity: 0.5109983079526227 Specificity: 0.5281293952180028 Threshold: 0.28 Accuracy: 0.5230998509687034 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.88it/s]
Loss: 0.5782694422429607 AUROC: 0.5311505703892996 AUPRC: 0.2868473172458488 Sensitivity: 0.5440613026819924 Specificity: 0.5054894784995425 Threshold: 0.28 Accuracy: 0.5156618390030313 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
Loss: 0.6020865309983492 AUROC: 0.5480020276010766 AUPRC: 0.33183952640142933 Sensitivity: 0.5329949238578681 Specificity: 0.5175808720112518 Threshold: 0.28 Accuracy: 0.5221063089915549 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.92it/s]
Loss: 0.5785952258494592 AUROC: 0.5342308069813828 AUPRC: 0.2854569792357489 Sensitivity: 0.5791826309067688 Specificity: 0.4890210430009149 Threshold: 0.28 Accuracy: 0.5127989221960256 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
Loss: 0.6032605394721031 AUROC: 0.5573404156582207 AUPRC: 0.33595955607733996 Sensitivity: 0.5211505922165821 Specificity: 0.5611814345991561 Threshold: 0.28 Accuracy: 0.5494287133631396 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.90it/s]
Loss: 0.5798512908720201 AUROC: 0.5354729650778962 AUPRC: 0.2867291123692314 Sensitivity: 0.5530012771392082 Specificity: 0.5157822506861848 Threshold: 0.28 Accuracy: 0.5255978443920512 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
Loss: 0.6076744925230742 AUROC: 0.5670988407928587 AUPRC: 0.34160654375503857 Sensitivity: 0.5634517766497462 Specificity: 0.540084388185654 Threshold: 0.25 Accuracy: 0.5469448584202683 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.93it/s]
Loss: 0.5819027436676846 AUROC: 0.5384438035378976 AUPRC: 0.28875079301304896 Sensitivity: 0.5038314176245211 Specificity: 0.5656450137236962 Threshold: 0.26 Accuracy: 0.5493432132030986 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
Loss: 0.6137552289292216 AUROC: 0.5680793239425893 AUPRC: 0.34125692600420565 Sensitivity: 0.5363790186125211 Specificity: 0.5738396624472574 Threshold: 0.25 Accuracy: 0.5628415300546448 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.91it/s]
Loss: 0.5843149119166917 AUROC: 0.5380303107315917 AUPRC: 0.28904282903486633 Sensitivity: 0.5530012771392082 Specificity: 0.5203568161024703 Threshold: 0.25 Accuracy: 0.5289659818120579 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
Loss: 0.6060820575803518 AUROC: 0.572386786323688 AUPRC: 0.34409528833645586 Sensitivity: 0.5905245346869712 Specificity: 0.5182841068917018 Threshold: 0.26 Accuracy: 0.5394932935916542 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.90it/s]
Loss: 0.5827427368651155 AUROC: 0.5414827784847029 AUPRC: 0.29082746104566704 Sensitivity: 0.5472541507024266 Specificity: 0.529277218664227 Threshold: 0.27 Accuracy: 0.534018187942068 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
Loss: 0.6097389413043857 AUROC: 0.5747106741773579 AUPRC: 0.3410165888336079 Sensitivity: 0.5482233502538071 Specificity: 0.569620253164557 Threshold: 0.26 Accuracy: 0.563338301043219 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.88it/s]
Loss: 0.5830539000290696 AUROC: 0.5431794719444182 AUPRC: 0.291594602084003 Sensitivity: 0.5715197956577267 Specificity: 0.5089204025617566 Threshold: 0.26 Accuracy: 0.5254294375210509 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.6094281654804945 AUROC: 0.5782185192324626 AUPRC: 0.34180092483854685 Sensitivity: 0.5685279187817259 Specificity: 0.5618846694796061 Threshold: 0.25 Accuracy: 0.5638350720317934 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.91it/s]
Loss: 0.584711181540643 AUROC: 0.5450702777105907 AUPRC: 0.2917324797830879 Sensitivity: 0.5178799489144317 Specificity: 0.5615279048490394 Threshold: 0.26 Accuracy: 0.5500168406871 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
Loss: 0.6069764345884323 AUROC: 0.5806756766404649 AUPRC: 0.3439217160510819 Sensitivity: 0.5634517766497462 Specificity: 0.5541490857946554 Threshold: 0.27 Accuracy: 0.5568802781917536 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.89it/s]
Loss: 0.584310721646073 AUROC: 0.5453309198557171 AUPRC: 0.29203348070733426 Sensitivity: 0.5185185185185185 Specificity: 0.5601555352241537 Threshold: 0.28 Accuracy: 0.5491748063320984 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.6057392992079258 AUROC: 0.5821583004324121 AUPRC: 0.3450667461393431 Sensitivity: 0.5313028764805414 Specificity: 0.5787623066104078 Threshold: 0.28 Accuracy: 0.5648286140089419 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.90it/s]
Loss: 0.5851223430325908 AUROC: 0.5452183814568268 AUPRC: 0.2923551345781664 Sensitivity: 0.5542784163473818 Specificity: 0.5224153705397987 Threshold: 0.28 Accuracy: 0.5308184573930617 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
Loss: 0.6105764945968986 AUROC: 0.5778782059062211 AUPRC: 0.3409864883180724 Sensitivity: 0.5532994923857868 Specificity: 0.5661040787623066 Threshold: 0.26 Accuracy: 0.5623447590660705 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.86it/s]
Loss: 0.5871954412870509 AUROC: 0.5444061477952697 AUPRC: 0.2912226541553148 Sensitivity: 0.5651340996168582 Specificity: 0.5118938700823422 Threshold: 0.26 Accuracy: 0.5259346581340518 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
Loss: 0.605959395878017 AUROC: 0.5787492176363216 AUPRC: 0.3430237384874886 Sensitivity: 0.544839255499154 Specificity: 0.5590717299578059 Threshold: 0.28 Accuracy: 0.5548931942374565 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.85it/s]
Loss: 0.5879483988849066 AUROC: 0.5426081624736072 AUPRC: 0.2908542433517307 Sensitivity: 0.5574712643678161 Specificity: 0.5141811527904849 Threshold: 0.28 Accuracy: 0.5255978443920512 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.6108223125338554 AUROC: 0.5791157089107355 AUPRC: 0.34250935437951013 Sensitivity: 0.5499153976311336 Specificity: 0.559774964838256 Threshold: 0.27 Accuracy: 0.5568802781917536 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.90it/s]
Loss: 0.5897925470464973 AUROC: 0.5422573289445549 AUPRC: 0.29091653574807885 Sensitivity: 0.5108556832694764 Specificity: 0.5594693504117109 Threshold: 0.28 Accuracy: 0.5466487032670932 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
Loss: 0.6105934400111437 AUROC: 0.5788682083098327 AUPRC: 0.3423226334638845 Sensitivity: 0.571912013536379 Specificity: 0.5428973277074542 Threshold: 0.28 Accuracy: 0.5514157973174366 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.91it/s]
Loss: 0.5912843586937073 AUROC: 0.5419282581947819 AUPRC: 0.2896703200636994 Sensitivity: 0.5357598978288634 Specificity: 0.542772186642269 Threshold: 0.29 Accuracy: 0.5409228696530819 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.6176992636173964 AUROC: 0.5775438421136552 AUPRC: 0.3411043339850676 Sensitivity: 0.5363790186125211 Specificity: 0.5639943741209564 Threshold: 0.26 Accuracy: 0.555886736214605 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.88it/s]
Loss: 0.5926954054063366 AUROC: 0.5420997313684319 AUPRC: 0.2906872839659669 Sensitivity: 0.5561941251596424 Specificity: 0.5164684354986276 Threshold: 0.26 Accuracy: 0.5269450993600538 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.616245910525322 AUROC: 0.575500772249471 AUPRC: 0.34221248703926527 Sensitivity: 0.5346869712351946 Specificity: 0.5717299578059072 Threshold: 0.28 Accuracy: 0.5608544461003477 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.89it/s]
Loss: 0.5936602648868355 AUROC: 0.5419230731030743 AUPRC: 0.2895729793689282 Sensitivity: 0.5555555555555556 Specificity: 0.5244739249771272 Threshold: 0.28 Accuracy: 0.5326709329740653 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
Loss: 0.6193196820095181 AUROC: 0.5754924429023253 AUPRC: 0.3411903825264966 Sensitivity: 0.5752961082910322 Specificity: 0.5541490857946554 Threshold: 0.26 Accuracy: 0.5603576751117735 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.89it/s]
Loss: 0.5943549925922066 AUROC: 0.5414429043991779 AUPRC: 0.2903373884165475 Sensitivity: 0.5268199233716475 Specificity: 0.5443732845379688 Threshold: 0.27 Accuracy: 0.5397440215560795 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.633265576325357 AUROC: 0.5735743132453279 AUPRC: 0.33853937035721327 Sensitivity: 0.5397631133671743 Specificity: 0.5731364275668073 Threshold: 0.24 Accuracy: 0.563338301043219 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.90it/s]
Loss: 0.6002447544246592 AUROC: 0.5410989356394285 AUPRC: 0.2903978778677409 Sensitivity: 0.5498084291187739 Specificity: 0.52516010978957 Threshold: 0.24 Accuracy: 0.5316604917480633 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
Loss: 0.6231340896338224 AUROC: 0.572311822199376 AUPRC: 0.3392913576598082 Sensitivity: 0.5634517766497462 Specificity: 0.5471167369901547 Threshold: 0.27 Accuracy: 0.5519125683060109 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.89it/s]
Loss: 0.5964457309374245 AUROC: 0.5386482129983092 AUPRC: 0.2887739745585887 Sensitivity: 0.5217113665389528 Specificity: 0.5384263494967978 Threshold: 0.28 Accuracy: 0.534018187942068 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
Loss: 0.620681625790894 AUROC: 0.5700260113612294 AUPRC: 0.3375625210503961 Sensitivity: 0.5685279187817259 Specificity: 0.5372714486638537 Threshold: 0.28 Accuracy: 0.546448087431694 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.88it/s]
Loss: 0.5991821093584901 AUROC: 0.5369506431850659 AUPRC: 0.2878923141454345 Sensitivity: 0.5344827586206896 Specificity: 0.5265324794144556 Threshold: 0.29 Accuracy: 0.5286291680700572 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
Loss: 0.6405647806823254 AUROC: 0.5678615710100643 AUPRC: 0.33448976519130524 Sensitivity: 0.544839255499154 Specificity: 0.549929676511955 Threshold: 0.23 Accuracy: 0.5484351713859911 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.88it/s]
Loss: 0.60540844099496 AUROC: 0.5395880291276544 AUPRC: 0.2886646385389605 Sensitivity: 0.520434227330779 Specificity: 0.5521500457456542 Threshold: 0.24 Accuracy: 0.5437857864600876 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.629399448633194 AUROC: 0.5700224416410242 AUPRC: 0.3355426695655793 Sensitivity: 0.5313028764805414 Specificity: 0.5590717299578059 Threshold: 0.25 Accuracy: 0.5509190263288624 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.91it/s]
Loss: 0.6023404649508897 AUROC: 0.53887109891227 AUPRC: 0.2888146854006998 Sensitivity: 0.5146871008939975 Specificity: 0.5539798719121684 Threshold: 0.26 Accuracy: 0.5436173795890872 Intermediate Model: ./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.6347387889400125 AUROC: 0.5697856502007372 AUPRC: 0.33759729615593326 Sensitivity: 0.5279187817258884 Specificity: 0.5682137834036568 Threshold: 0.26 Accuracy: 0.5563835072031793 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.88it/s]
Loss: 0.6014164961794372 AUROC: 0.5391107816021846 AUPRC: 0.2884365048571109 Sensitivity: 0.5485312899106003 Specificity: 0.5194419030192132 Threshold: 0.26 Accuracy: 0.5271135062310542 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 4, 0.6011 Epoch with best model Test AUROC: 10, 0.5453 Epoch with best model Test Accuracy: 9, 0.55
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 4, 0.6011
Best Model Based on Validation Loss:
./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0004.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.85it/s]
Loss: 0.5798512908720201 AUROC: 0.5354729650778962 AUPRC: 0.2867291123692314 Sensitivity: 0.5530012771392082 Specificity: 0.5157822506861848 Threshold: 0.28 Accuracy: 0.5255978443920512
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.5354729650778962
best_model_val_test_auprc: 0.2867291123692314
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 10, 0.5453
Best Model Based on Model AUROC:
./vitaldb_cache/models/EEG_ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_79fee726_0010.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.86it/s]
Loss: 0.584310721646073 AUROC: 0.5453309198557171 AUPRC: 0.29203348070733426 Sensitivity: 0.5185185185185185 Specificity: 0.5601555352241537 Threshold: 0.28 Accuracy: 0.5491748063320984
best_model_auroc_test_auroc: 0.5453309198557171
best_model_auroc_test_auprc: 0.29203348070733426 Total Processing Time: 2101.2990 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=False,
useEeg=True,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd
prediction_window: 003
max_cases: _ALL
use_abp: False
use_eeg: True
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(eegResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(3,), stride=(1,), padding=(1,), bias=False)
)
)
(eegFc): Linear(in_features=720, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.28it/s]
[2024-05-03 04:26:52.160968] Completed epoch 0 with training loss 0.63661206, validation loss 0.61338371 Validation loss improved to 0.61338371. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.28it/s]
[2024-05-03 04:27:38.874341] Completed epoch 1 with training loss 0.59534109, validation loss 0.60548973 Validation loss improved to 0.60548973. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.54it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.29it/s]
[2024-05-03 04:28:25.533997] Completed epoch 2 with training loss 0.59008425, validation loss 0.60290301 Validation loss improved to 0.60290301. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.54it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.29it/s]
[2024-05-03 04:29:12.177529] Completed epoch 3 with training loss 0.58660990, validation loss 0.60550100 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.30it/s]
[2024-05-03 04:29:58.878550] Completed epoch 4 with training loss 0.58528095, validation loss 0.60142422 Validation loss improved to 0.60142422. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.51it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.30it/s]
[2024-05-03 04:30:45.788320] Completed epoch 5 with training loss 0.58556360, validation loss 0.60244793 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.52it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.26it/s]
[2024-05-03 04:31:32.624250] Completed epoch 6 with training loss 0.58162558, validation loss 0.60284162 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:41<00:00, 4.46it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.27it/s]
[2024-05-03 04:32:20.006842] Completed epoch 7 with training loss 0.58127362, validation loss 0.59903944 Validation loss improved to 0.59903944. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.51it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
[2024-05-03 04:33:07.026684] Completed epoch 8 with training loss 0.57976663, validation loss 0.60090727 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.50it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.27it/s]
[2024-05-03 04:33:53.998203] Completed epoch 9 with training loss 0.57663119, validation loss 0.59891558 Validation loss improved to 0.59891558. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.52it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.27it/s]
[2024-05-03 04:34:40.841980] Completed epoch 10 with training loss 0.57310021, validation loss 0.59729981 Validation loss improved to 0.59729981. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.55it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.29it/s]
[2024-05-03 04:35:27.402302] Completed epoch 11 with training loss 0.57295966, validation loss 0.59744358 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.54it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.31it/s]
[2024-05-03 04:36:13.961760] Completed epoch 12 with training loss 0.57186645, validation loss 0.59810328 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.57it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.32it/s]
[2024-05-03 04:37:00.283054] Completed epoch 13 with training loss 0.57073534, validation loss 0.59739977 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.57it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 5.34it/s]
[2024-05-03 04:37:46.588655] Completed epoch 14 with training loss 0.56714708, validation loss 0.59567964 Validation loss improved to 0.59567964. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.55it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.26it/s]
[2024-05-03 04:38:33.177950] Completed epoch 15 with training loss 0.56761169, validation loss 0.59713721 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.59it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.32it/s]
[2024-05-03 04:39:19.291149] Completed epoch 16 with training loss 0.56703341, validation loss 0.59605587 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.57it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.20it/s]
[2024-05-03 04:40:05.704889] Completed epoch 17 with training loss 0.56633019, validation loss 0.59953374 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.54it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.30it/s]
[2024-05-03 04:40:52.286578] Completed epoch 18 with training loss 0.56485087, validation loss 0.60204464 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.55it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.28it/s]
[2024-05-03 04:41:38.783426] Completed epoch 19 with training loss 0.56512499, validation loss 0.60245526 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.29it/s]
[2024-05-03 04:42:25.467153] Completed epoch 20 with training loss 0.56230974, validation loss 0.60434192 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.55it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.29it/s]
[2024-05-03 04:43:12.003111] Completed epoch 21 with training loss 0.56349981, validation loss 0.60313100 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.26it/s]
[2024-05-03 04:43:58.776137] Completed epoch 22 with training loss 0.56183088, validation loss 0.60668719 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.52it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.24it/s]
[2024-05-03 04:44:45.609451] Completed epoch 23 with training loss 0.56124622, validation loss 0.60906309 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
[2024-05-03 04:45:32.357647] Completed epoch 24 with training loss 0.55994362, validation loss 0.60366207 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.52it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.26it/s]
[2024-05-03 04:46:19.169729] Completed epoch 25 with training loss 0.55902904, validation loss 0.60785043 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.52it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.26it/s]
[2024-05-03 04:47:05.991735] Completed epoch 26 with training loss 0.56110805, validation loss 0.61101615 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.25it/s]
[2024-05-03 04:47:52.739731] Completed epoch 27 with training loss 0.55968577, validation loss 0.61582410 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:41<00:00, 4.44it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.25it/s]
[2024-05-03 04:48:40.292873] Completed epoch 28 with training loss 0.55962986, validation loss 0.61423957 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.25it/s]
[2024-05-03 04:49:27.076048] Completed epoch 29 with training loss 0.55747348, validation loss 0.61110055 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.52it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.27it/s]
[2024-05-03 04:50:13.913714] Completed epoch 30 with training loss 0.55656320, validation loss 0.61432463 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.52it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.26it/s]
[2024-05-03 04:51:00.774042] Completed epoch 31 with training loss 0.55597287, validation loss 0.61394876 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.52it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.27it/s]
[2024-05-03 04:51:47.559654] Completed epoch 32 with training loss 0.55755609, validation loss 0.62218302 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.25it/s]
[2024-05-03 04:52:34.329414] Completed epoch 33 with training loss 0.55681342, validation loss 0.61697972 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:40<00:00, 4.53it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.24it/s]
[2024-05-03 04:53:21.079711] Completed epoch 34 with training loss 0.55612165, validation loss 0.61868763 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 14, 0.5957
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 6.02it/s]
Loss: 0.6141650844365358 AUROC: 0.5183013605393609 AUPRC: 0.3205265966264843 Sensitivity: 0.4957698815566836 Specificity: 0.509142053445851 Threshold: 0.35000000000000003 Accuracy: 0.5052160953800298 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.18it/s]
Loss: 0.6016037579505674 AUROC: 0.5101349555221373 AUPRC: 0.2810630856502994 Sensitivity: 0.5466155810983397 Specificity: 0.4730100640439158 Threshold: 0.35000000000000003 Accuracy: 0.4924216908049848 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.20it/s]
Loss: 0.6044107805937529 AUROC: 0.5344007986654006 AUPRC: 0.3303843686550846 Sensitivity: 0.5786802030456852 Specificity: 0.4613220815752461 Threshold: 0.3 Accuracy: 0.49577744659711875 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5831042457652348 AUROC: 0.5236140030777536 AUPRC: 0.2862331806665511 Sensitivity: 0.46551724137931033 Specificity: 0.5807410795974383 Threshold: 0.31 Accuracy: 0.5503536544291007 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.24it/s]
Loss: 0.6026125773787498 AUROC: 0.5488516210099452 AUPRC: 0.3367761326675514 Sensitivity: 0.5803722504230119 Specificity: 0.4873417721518987 Threshold: 0.29 Accuracy: 0.5146547441629409 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.18it/s]
Loss: 0.5792365481135666 AUROC: 0.5316234361471293 AUPRC: 0.2921042267083144 Sensitivity: 0.5798212005108557 Specificity: 0.46889295516925894 Threshold: 0.29 Accuracy: 0.4981475244189963 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.20it/s]
Loss: 0.6046890094876289 AUROC: 0.5512129909257713 AUPRC: 0.3360588069943252 Sensitivity: 0.48392554991539766 Specificity: 0.5836849507735584 Threshold: 0.3 Accuracy: 0.5543964232488823 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.22it/s]
Loss: 0.5795132671633074 AUROC: 0.5342288351859447 AUPRC: 0.29493701475908335 Sensitivity: 0.5 Specificity: 0.5681610247026533 Threshold: 0.3 Accuracy: 0.5501852475581004 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
Loss: 0.603586133569479 AUROC: 0.5582935309530438 AUPRC: 0.33974583265214586 Sensitivity: 0.4754653130287648 Specificity: 0.6146272855133614 Threshold: 0.31 Accuracy: 0.5737704918032787 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5803866110822206 AUROC: 0.5414050751385515 AUPRC: 0.2988196291580791 Sensitivity: 0.45721583652618136 Specificity: 0.6225983531564502 Threshold: 0.31 Accuracy: 0.578982822499158 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.18it/s]
Loss: 0.6023571006953716 AUROC: 0.5619524941635075 AUPRC: 0.3427502313761474 Sensitivity: 0.4754653130287648 Specificity: 0.6033755274261603 Threshold: 0.3 Accuracy: 0.5658221559860904 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5786493138600421 AUROC: 0.5416248207857035 AUPRC: 0.30104601544384185 Sensitivity: 0.48020434227330777 Specificity: 0.5910338517840805 Threshold: 0.3 Accuracy: 0.5618053216571236 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.24it/s]
Loss: 0.6056117992848158 AUROC: 0.5697606621593 AUPRC: 0.34542975061716574 Sensitivity: 0.571912013536379 Specificity: 0.5246132208157525 Threshold: 0.26 Accuracy: 0.5384997516145057 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.17it/s]
Loss: 0.576227113123863 AUROC: 0.5451917987331434 AUPRC: 0.3018834157759577 Sensitivity: 0.5644955300127714 Specificity: 0.5116651418115279 Threshold: 0.26 Accuracy: 0.5255978443920512 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.21it/s]
Loss: 0.6007787045091391 AUROC: 0.5754823286950769 AUPRC: 0.3504197287388526 Sensitivity: 0.6057529610829103 Specificity: 0.48523206751054854 Threshold: 0.3 Accuracy: 0.5206159960258321 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.21it/s]
Loss: 0.5794667418925993 AUROC: 0.5464523602537452 AUPRC: 0.30146469890158045 Sensitivity: 0.6008939974457216 Specificity: 0.47209515096065874 Threshold: 0.3 Accuracy: 0.5060626473560121 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.23it/s]
Loss: 0.6014285963028669 AUROC: 0.5814586352721673 AUPRC: 0.35432408323485565 Sensitivity: 0.55668358714044 Specificity: 0.5436005625879043 Threshold: 0.3 Accuracy: 0.5474416294088426 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5781825546936322 AUROC: 0.5502233094848327 AUPRC: 0.3019466827245265 Sensitivity: 0.5510855683269477 Specificity: 0.532708142726441 Threshold: 0.3 Accuracy: 0.5375547322330751 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.20it/s]
Loss: 0.6004287758842111 AUROC: 0.5916811240334983 AUPRC: 0.3623707223468373 Sensitivity: 0.6175972927241963 Specificity: 0.5267229254571026 Threshold: 0.27 Accuracy: 0.5534028812717338 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5748749657343792 AUROC: 0.5567055504727051 AUPRC: 0.30400620920046756 Sensitivity: 0.5932311621966795 Specificity: 0.5089204025617566 Threshold: 0.27 Accuracy: 0.5311552711350623 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
Loss: 0.5936149191111326 AUROC: 0.5956066263526265 AUPRC: 0.3634192597875375 Sensitivity: 0.6091370558375635 Specificity: 0.5485232067510548 Threshold: 0.28 Accuracy: 0.5663189269746647 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.575979475052126 AUROC: 0.5546049310660315 AUPRC: 0.3015131646516741 Sensitivity: 0.570242656449553 Specificity: 0.5215004574565416 Threshold: 0.28 Accuracy: 0.5343550016840687 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.19it/s]
Loss: 0.5969545543193817 AUROC: 0.5982404849107927 AUPRC: 0.3653341355028371 Sensitivity: 0.55668358714044 Specificity: 0.5942334739803095 Threshold: 0.29 Accuracy: 0.5832091405861898 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.21it/s]
Loss: 0.5766188922107861 AUROC: 0.5560569758325067 AUPRC: 0.30186176284375293 Sensitivity: 0.5217113665389528 Specificity: 0.568847209515096 Threshold: 0.29 Accuracy: 0.5564163017851128 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.20it/s]
Loss: 0.5950953401625156 AUROC: 0.6007101363395136 AUPRC: 0.36492260138836663 Sensitivity: 0.5752961082910322 Specificity: 0.5935302390998594 Threshold: 0.29 Accuracy: 0.5881768504719325 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.19it/s]
Loss: 0.5777847699580654 AUROC: 0.5567079604449071 AUPRC: 0.29903860804687643 Sensitivity: 0.5287356321839081 Specificity: 0.5558096980786825 Threshold: 0.29 Accuracy: 0.5486695857190973 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
Loss: 0.5970131326466799 AUROC: 0.6011170844429213 AUPRC: 0.3651148959205678 Sensitivity: 0.5651438240270727 Specificity: 0.5949367088607594 Threshold: 0.29 Accuracy: 0.5861897665176353 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5779396144933598 AUROC: 0.5578417428217882 AUPRC: 0.30224410595752566 Sensitivity: 0.5236270753512133 Specificity: 0.5587831655992681 Threshold: 0.29 Accuracy: 0.549511620074099 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.23it/s]
Loss: 0.5961790420114994 AUROC: 0.5978055739991099 AUPRC: 0.3605457658779099 Sensitivity: 0.6057529610829103 Specificity: 0.5548523206751055 Threshold: 0.3 Accuracy: 0.5697963238946846 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5808101139401877 AUROC: 0.5570704786876665 AUPRC: 0.30146017575489037 Sensitivity: 0.570242656449553 Specificity: 0.5176120768526989 Threshold: 0.3 Accuracy: 0.531492084877063 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
Loss: 0.5992833226919174 AUROC: 0.5960599808187034 AUPRC: 0.3612498947284134 Sensitivity: 0.5769881556683587 Specificity: 0.5794655414908579 Threshold: 0.3 Accuracy: 0.5787382016890213 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5808956738441221 AUROC: 0.5576444902485223 AUPRC: 0.300473235884332 Sensitivity: 0.5389527458492975 Specificity: 0.5487191216834401 Threshold: 0.3 Accuracy: 0.5461434826540923 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.14it/s]
Loss: 0.5993283996358514 AUROC: 0.5946713596588299 AUPRC: 0.3573124255268805 Sensitivity: 0.5854483925549916 Specificity: 0.5668073136427567 Threshold: 0.31 Accuracy: 0.5722801788375559 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5828358550225535 AUROC: 0.5581478092914506 AUPRC: 0.30072907852010583 Sensitivity: 0.5593869731800766 Specificity: 0.5322506861848124 Threshold: 0.31 Accuracy: 0.5394072078140788 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.19it/s]
Loss: 0.5990998018532991 AUROC: 0.5940383292757514 AUPRC: 0.35723721434711353 Sensitivity: 0.6057529610829103 Specificity: 0.5534458509142054 Threshold: 0.29 Accuracy: 0.568802781917536 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.24it/s]
Loss: 0.581361949123362 AUROC: 0.5569266836796098 AUPRC: 0.29763239089006444 Sensitivity: 0.5287356321839081 Specificity: 0.5677035681610247 Threshold: 0.3 Accuracy: 0.5574267430111148 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.23it/s]
Loss: 0.6016355836763978 AUROC: 0.5934481355351368 AUPRC: 0.35725875796843554 Sensitivity: 0.5854483925549916 Specificity: 0.569620253164557 Threshold: 0.29 Accuracy: 0.5742672627918529 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5815770180635554 AUROC: 0.5576950996647656 AUPRC: 0.2989021951536264 Sensitivity: 0.5689655172413793 Specificity: 0.5315645013723697 Threshold: 0.29 Accuracy: 0.5414280902660829 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.23it/s]
Loss: 0.5995805626735091 AUROC: 0.5897487154956795 AUPRC: 0.3561709262305643 Sensitivity: 0.5786802030456852 Specificity: 0.5731364275668073 Threshold: 0.3 Accuracy: 0.5747640337804272 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5832556095174564 AUROC: 0.5568090332184725 AUPRC: 0.2973049213691541 Sensitivity: 0.558109833971903 Specificity: 0.5368252516010978 Threshold: 0.3 Accuracy: 0.5424385314920849 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.24it/s]
Loss: 0.6052857795730233 AUROC: 0.5867358716423807 AUPRC: 0.351526243767546 Sensitivity: 0.5989847715736041 Specificity: 0.5464135021097046 Threshold: 0.29 Accuracy: 0.5618479880774963 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.19it/s]
Loss: 0.5843683244079672 AUROC: 0.5551515565791365 AUPRC: 0.29729972389346426 Sensitivity: 0.5312899106002554 Specificity: 0.5615279048490394 Threshold: 0.3 Accuracy: 0.5535533849781071 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.19it/s]
Loss: 0.6061707902699709 AUROC: 0.5841763822551588 AUPRC: 0.35199499771989684 Sensitivity: 0.5956006768189509 Specificity: 0.5414908579465542 Threshold: 0.3 Accuracy: 0.5573770491803278 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5859160961643342 AUROC: 0.5541322113671232 AUPRC: 0.29728318838423257 Sensitivity: 0.533205619412516 Specificity: 0.5571820677035682 Threshold: 0.31 Accuracy: 0.5508588750421017 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.23it/s]
Loss: 0.6064798645675182 AUROC: 0.5839645788563093 AUPRC: 0.35039300387194666 Sensitivity: 0.5922165820642978 Specificity: 0.5443037974683544 Threshold: 0.29 Accuracy: 0.5583705911574764 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.22it/s]
Loss: 0.5859226437025172 AUROC: 0.5530361852214077 AUPRC: 0.29531228619343086 Sensitivity: 0.5293742017879949 Specificity: 0.5546660567246111 Threshold: 0.3 Accuracy: 0.547995958235096 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
Loss: 0.607782213948667 AUROC: 0.5829008022351208 AUPRC: 0.3488008484787364 Sensitivity: 0.5702199661590525 Specificity: 0.5548523206751055 Threshold: 0.29 Accuracy: 0.559364133134625 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.24it/s]
Loss: 0.5860756693347808 AUROC: 0.553137111936052 AUPRC: 0.2965320152630533 Sensitivity: 0.5689655172413793 Specificity: 0.5194419030192132 Threshold: 0.29 Accuracy: 0.532502526103065 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.24it/s]
Loss: 0.6064228611066937 AUROC: 0.5829495884112603 AUPRC: 0.348848643968491 Sensitivity: 0.5803722504230119 Specificity: 0.5428973277074542 Threshold: 0.29 Accuracy: 0.553899652260308 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5875331189042778 AUROC: 0.5523432086691228 AUPRC: 0.29689907360376266 Sensitivity: 0.5293742017879949 Specificity: 0.5608417200365965 Threshold: 0.3 Accuracy: 0.5525429437521051 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.23it/s]
Loss: 0.6087799929082394 AUROC: 0.5809600643501562 AUPRC: 0.3453608638137303 Sensitivity: 0.5397631133671743 Specificity: 0.5745428973277075 Threshold: 0.31 Accuracy: 0.5643318430203677 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.21it/s]
Loss: 0.5900383694197542 AUROC: 0.5490398670746969 AUPRC: 0.29485976513304063 Sensitivity: 0.5446998722860792 Specificity: 0.5466605672461117 Threshold: 0.31 Accuracy: 0.5461434826540923 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.23it/s]
Loss: 0.6098607406020164 AUROC: 0.5822142260489623 AUPRC: 0.34750561322765317 Sensitivity: 0.5583756345177665 Specificity: 0.5661040787623066 Threshold: 0.28 Accuracy: 0.5638350720317934 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5888382000948793 AUROC: 0.5503793734422816 AUPRC: 0.295136203064865 Sensitivity: 0.5593869731800766 Specificity: 0.5311070448307411 Threshold: 0.28 Accuracy: 0.5385651734590772 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.23it/s]
Loss: 0.6129484046250582 AUROC: 0.581643665769477 AUPRC: 0.34671656190446326 Sensitivity: 0.5516074450084603 Specificity: 0.569620253164557 Threshold: 0.29 Accuracy: 0.5643318430203677 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5891279840982089 AUROC: 0.5504128209352679 AUPRC: 0.2970253063938088 Sensitivity: 0.5408684546615581 Specificity: 0.5459743824336688 Threshold: 0.29 Accuracy: 0.5446278208150892 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
Loss: 0.612693702802062 AUROC: 0.5786694938850693 AUPRC: 0.34473108691223964 Sensitivity: 0.5769881556683587 Specificity: 0.540084388185654 Threshold: 0.28 Accuracy: 0.5509190263288624 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5887591377381356 AUROC: 0.5506231457819936 AUPRC: 0.2962621926707574 Sensitivity: 0.5319284802043422 Specificity: 0.5535224153705398 Threshold: 0.29 Accuracy: 0.5478275513640957 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.20it/s]
Loss: 0.6093532908707857 AUROC: 0.5762123364770669 AUPRC: 0.344093715520696 Sensitivity: 0.5752961082910322 Specificity: 0.5407876230661041 Threshold: 0.29 Accuracy: 0.5509190263288624 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5897298641102289 AUROC: 0.5491968804151345 AUPRC: 0.2955071054466424 Sensitivity: 0.5319284802043422 Specificity: 0.5532936870997255 Threshold: 0.3 Accuracy: 0.5476591444930953 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.22it/s]
Loss: 0.6111234147101641 AUROC: 0.5744203369339911 AUPRC: 0.3396868426873748 Sensitivity: 0.5532994923857868 Specificity: 0.5618846694796061 Threshold: 0.3 Accuracy: 0.559364133134625 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.19it/s]
Loss: 0.5912380689574827 AUROC: 0.5492965656289472 AUPRC: 0.29590038696207066 Sensitivity: 0.5549169859514687 Specificity: 0.5322506861848124 Threshold: 0.3 Accuracy: 0.5382283597170765 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.25it/s]
Loss: 0.6150239817798138 AUROC: 0.5732875457221663 AUPRC: 0.3383341795828968 Sensitivity: 0.5702199661590525 Specificity: 0.5513361462728551 Threshold: 0.31 Accuracy: 0.5568802781917536 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.25it/s]
Loss: 0.5946434383751243 AUROC: 0.5478743168824249 AUPRC: 0.2950187618975768 Sensitivity: 0.5242656449553001 Specificity: 0.562900274473925 Threshold: 0.32 Accuracy: 0.5527113506231054 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.26it/s]
Loss: 0.6148576838895679 AUROC: 0.5718644172669746 AUPRC: 0.3378620697530065 Sensitivity: 0.583756345177665 Specificity: 0.5358649789029536 Threshold: 0.28 Accuracy: 0.5499254843517138 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5919182117908232 AUROC: 0.547951435992891 AUPRC: 0.2939429073072423 Sensitivity: 0.5389527458492975 Specificity: 0.5471180237877402 Threshold: 0.29 Accuracy: 0.5449646345570899 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.24it/s]
Loss: 0.6186250941827893 AUROC: 0.5702116368119066 AUPRC: 0.3373019082267458 Sensitivity: 0.5583756345177665 Specificity: 0.5611814345991561 Threshold: 0.3 Accuracy: 0.5603576751117735 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5940285693573696 AUROC: 0.5475193937035752 AUPRC: 0.295028407285058 Sensitivity: 0.5542784163473818 Specificity: 0.5324794144556267 Threshold: 0.3 Accuracy: 0.5382283597170765 Intermediate Model: ./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.24it/s]
Loss: 0.6207912862300873 AUROC: 0.5698487152576982 AUPRC: 0.3380816650625932 Sensitivity: 0.5363790186125211 Specificity: 0.5654008438818565 Threshold: 0.28 Accuracy: 0.5568802781917536 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.24it/s]
Loss: 0.5919218188331973 AUROC: 0.5498803631375326 AUPRC: 0.29607998862187057 Sensitivity: 0.5504469987228607 Specificity: 0.5430009149130832 Threshold: 0.28 Accuracy: 0.5449646345570899 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 14, 0.5957 Epoch with best model Test AUROC: 16, 0.5581 Epoch with best model Test Accuracy: 4, 0.579
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 14, 0.5957
Best Model Based on Validation Loss:
./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0014.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.23it/s]
Loss: 0.5808101139401877 AUROC: 0.5570704786876665 AUPRC: 0.30146017575489037 Sensitivity: 0.570242656449553 Specificity: 0.5176120768526989 Threshold: 0.3 Accuracy: 0.531492084877063
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.5570704786876665
best_model_val_test_auprc: 0.30146017575489037
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 16, 0.5581
Best Model Based on Model AUROC:
./vitaldb_cache/models/EEG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_725079fd_0016.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:17<00:00, 5.20it/s]
Loss: 0.5828358550225535 AUROC: 0.5581478092914506 AUPRC: 0.30072907852010583 Sensitivity: 0.5593869731800766 Specificity: 0.5322506861848124 Threshold: 0.31 Accuracy: 0.5394072078140788
best_model_auroc_test_auroc: 0.5581478092914506
best_model_auroc_test_auprc: 0.30072907852010583 Total Processing Time: 2544.6620 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=False,
useEeg=False,
useEcg=True,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca
prediction_window: 003
max_cases: _ALL
use_abp: False
use_eeg: False
use_ecg: True
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(ecgResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(ecgFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:09:22.707361] Completed epoch 0 with training loss 0.60784280, validation loss 0.60681343 Validation loss improved to 0.60681343. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:10:15.360985] Completed epoch 1 with training loss 0.59225327, validation loss 0.60467982 Validation loss improved to 0.60467982. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 05:11:07.704572] Completed epoch 2 with training loss 0.59260458, validation loss 0.60917592 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
[2024-05-03 05:12:00.049484] Completed epoch 3 with training loss 0.58953434, validation loss 0.60497808 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:12:52.508194] Completed epoch 4 with training loss 0.58898252, validation loss 0.60511196 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.01it/s]
[2024-05-03 05:13:45.597193] Completed epoch 5 with training loss 0.58967334, validation loss 0.60828161 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.07it/s]
[2024-05-03 05:14:37.830461] Completed epoch 6 with training loss 0.58975559, validation loss 0.60835576 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:15:30.117069] Completed epoch 7 with training loss 0.58815217, validation loss 0.60821557 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:16:22.607881] Completed epoch 8 with training loss 0.58834350, validation loss 0.60717005 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:17:15.106874] Completed epoch 9 with training loss 0.58753538, validation loss 0.60792673 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
[2024-05-03 05:18:07.753794] Completed epoch 10 with training loss 0.58737952, validation loss 0.60682505 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
[2024-05-03 05:19:00.451200] Completed epoch 11 with training loss 0.58520716, validation loss 0.60453486 Validation loss improved to 0.60453486. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:19:52.864761] Completed epoch 12 with training loss 0.58556026, validation loss 0.61025226 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:20:45.516545] Completed epoch 13 with training loss 0.58561450, validation loss 0.61261886 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:21:38.080171] Completed epoch 14 with training loss 0.58556902, validation loss 0.60898399 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:22:30.619852] Completed epoch 15 with training loss 0.58414865, validation loss 0.61201000 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:23:23.119728] Completed epoch 16 with training loss 0.58590829, validation loss 0.61258662 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:24:15.761465] Completed epoch 17 with training loss 0.58400422, validation loss 0.60935515 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:25:08.322907] Completed epoch 18 with training loss 0.58570433, validation loss 0.60943490 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:26:00.891316] Completed epoch 19 with training loss 0.58344764, validation loss 0.60920292 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:26:53.499044] Completed epoch 20 with training loss 0.58207321, validation loss 0.60899413 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:27:46.039138] Completed epoch 21 with training loss 0.58156908, validation loss 0.60961115 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:28:38.501041] Completed epoch 22 with training loss 0.57994342, validation loss 0.61250937 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.01it/s]
[2024-05-03 05:29:31.094968] Completed epoch 23 with training loss 0.57744932, validation loss 0.60744679 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:30:23.804084] Completed epoch 24 with training loss 0.57423598, validation loss 0.60924888 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:31:16.236455] Completed epoch 25 with training loss 0.57218218, validation loss 0.60579622 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
[2024-05-03 05:32:09.032510] Completed epoch 26 with training loss 0.56928867, validation loss 0.60524905 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:33:01.619565] Completed epoch 27 with training loss 0.56854415, validation loss 0.60458624 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:33:54.065604] Completed epoch 28 with training loss 0.56460047, validation loss 0.60197562 Validation loss improved to 0.60197562. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:34:46.677372] Completed epoch 29 with training loss 0.56287026, validation loss 0.61178803 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:35:39.225535] Completed epoch 30 with training loss 0.55944991, validation loss 0.60566467 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:36:31.832189] Completed epoch 31 with training loss 0.55708390, validation loss 0.60841715 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.01it/s]
[2024-05-03 05:37:24.316805] Completed epoch 32 with training loss 0.55669767, validation loss 0.60598624 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:38:17.014531] Completed epoch 33 with training loss 0.55281687, validation loss 0.61090291 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
[2024-05-03 05:39:09.711336] Completed epoch 34 with training loss 0.55155241, validation loss 0.60675764 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
[2024-05-03 05:40:02.263666] Completed epoch 35 with training loss 0.54789621, validation loss 0.61061436 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
[2024-05-03 05:40:54.937460] Completed epoch 36 with training loss 0.54335767, validation loss 0.61386359 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.05it/s]
[2024-05-03 05:41:47.465109] Completed epoch 37 with training loss 0.54331827, validation loss 0.61534190 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:42:39.959676] Completed epoch 38 with training loss 0.54301703, validation loss 0.63209713 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.93it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:43:33.109499] Completed epoch 39 with training loss 0.53889239, validation loss 0.62041914 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:44:25.724528] Completed epoch 40 with training loss 0.53895593, validation loss 0.63788408 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.03it/s]
[2024-05-03 05:45:18.092393] Completed epoch 41 with training loss 0.53959662, validation loss 0.62225270 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
[2024-05-03 05:46:10.735464] Completed epoch 42 with training loss 0.53670126, validation loss 0.62394935 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.04it/s]
[2024-05-03 05:47:03.238744] Completed epoch 43 with training loss 0.53562379, validation loss 0.63053805 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 05:47:56.012675] Completed epoch 44 with training loss 0.53060991, validation loss 0.63786638 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.02it/s]
[2024-05-03 05:48:48.743954] Completed epoch 45 with training loss 0.52823466, validation loss 0.63213885 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 05:49:40.993491] Completed epoch 46 with training loss 0.52468973, validation loss 0.64483607 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
[2024-05-03 05:50:33.400613] Completed epoch 47 with training loss 0.52699912, validation loss 0.63861775 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:45<00:00, 4.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.06it/s]
[2024-05-03 05:51:25.617592] Completed epoch 48 with training loss 0.52480960, validation loss 0.64018112 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 28, 0.602
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 5.63it/s]
Loss: 0.6047387830913067 AUROC: 0.5398351027246484 AUPRC: 0.310672800601661 Sensitivity: 0.5126903553299492 Specificity: 0.5548523206751055 Threshold: 0.29 Accuracy: 0.5424739195230999 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.95it/s]
Loss: 0.5779482895328153 AUROC: 0.5222824569213818 AUPRC: 0.2775860261184142 Sensitivity: 0.46934865900383144 Specificity: 0.5430009149130832 Threshold: 0.29 Accuracy: 0.5235769619400471 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6051525250077248 AUROC: 0.5406222260299238 AUPRC: 0.314204423311615 Sensitivity: 0.16243654822335024 Specificity: 0.8445850914205345 Threshold: 0.31 Accuracy: 0.6443119721808246 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.96it/s]
Loss: 0.5810993701540014 AUROC: 0.5138514978050266 AUPRC: 0.2734974029712518 Sensitivity: 0.17177522349936142 Specificity: 0.8321134492223239 Threshold: 0.31 Accuracy: 0.6579656449983159 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.6091475561261177 AUROC: 0.5279497193010012 AUPRC: 0.31120286763873295 Sensitivity: 0.8460236886632826 Specificity: 0.1589310829817159 Threshold: 0.33 Accuracy: 0.36065573770491804 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5879774452537618 AUROC: 0.507264824688398 AUPRC: 0.26928631059133523 Sensitivity: 0.8582375478927203 Specificity: 0.1438700823421775 Threshold: 0.33 Accuracy: 0.33226675648366455 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.6085848528891802 AUROC: 0.5250743096756076 AUPRC: 0.30371323049910404 Sensitivity: 0.22165820642978004 Specificity: 0.7777777777777778 Threshold: 0.32 Accuracy: 0.6145057128663686 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.5836939529706073 AUROC: 0.5089563330564056 AUPRC: 0.2698796036974426 Sensitivity: 0.2567049808429119 Specificity: 0.7573193046660567 Threshold: 0.32 Accuracy: 0.6252947120242506 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6064513958990574 AUROC: 0.5198226563001992 AUPRC: 0.30075530728274513 Sensitivity: 0.505922165820643 Specificity: 0.5260196905766527 Threshold: 0.32 Accuracy: 0.5201192250372578 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5841516317218862 AUROC: 0.506017043323413 AUPRC: 0.26959299271767123 Sensitivity: 0.5159642401021711 Specificity: 0.4947392497712717 Threshold: 0.32 Accuracy: 0.5003368137420007 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6065646037459373 AUROC: 0.5248654810435958 AUPRC: 0.30908510461093 Sensitivity: 0.17597292724196278 Specificity: 0.8607594936708861 Threshold: 0.33 Accuracy: 0.6597118728266269 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5861548307121441 AUROC: 0.5150146380250965 AUPRC: 0.2723410070764478 Sensitivity: 0.1909323116219668 Specificity: 0.826395242451967 Threshold: 0.33 Accuracy: 0.6588076793533176 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.94it/s]
Loss: 0.6079040672630072 AUROC: 0.5193609724869765 AUPRC: 0.30981146209049026 Sensitivity: 0.19120135363790186 Specificity: 0.8248945147679325 Threshold: 0.34 Accuracy: 0.6388474913065078 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5893298772073561 AUROC: 0.5102327419699726 AUPRC: 0.27012770157076027 Sensitivity: 0.2081736909323116 Specificity: 0.8005489478499542 Threshold: 0.34 Accuracy: 0.6443246884472886 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6090990919619799 AUROC: 0.5145614836709098 AUPRC: 0.3127695937337182 Sensitivity: 0.739424703891709 Specificity: 0.26019690576652604 Threshold: 0.33 Accuracy: 0.4008941877794337 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.587798374634917 AUROC: 0.5114522609336787 AUPRC: 0.26696307373472694 Sensitivity: 0.8001277139208174 Specificity: 0.21683440073193047 Threshold: 0.33 Accuracy: 0.37066352307174133 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6052236165851355 AUROC: 0.510558042460632 AUPRC: 0.2988873807593486 Sensitivity: 0.7580372250423012 Specificity: 0.2440225035161744 Threshold: 0.31 Accuracy: 0.3949329359165425 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5824145972728729 AUROC: 0.5120194077252317 AUPRC: 0.2703719922766281 Sensitivity: 0.8071519795657727 Specificity: 0.21614821591948766 Threshold: 0.31 Accuracy: 0.37201077803974403 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6074506994336843 AUROC: 0.4996579018136559 AUPRC: 0.2999033539895697 Sensitivity: 0.2876480541455161 Specificity: 0.7018284106891702 Threshold: 0.33 Accuracy: 0.5802285146547441 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.95it/s]
Loss: 0.5862421088962144 AUROC: 0.5061306771642134 AUPRC: 0.26791041939797344 Sensitivity: 0.3269476372924649 Specificity: 0.6694876486733761 Threshold: 0.33 Accuracy: 0.5791512293701583 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6076197531074286 AUROC: 0.5018312664653345 AUPRC: 0.2904380969066579 Sensitivity: 0.6277495769881557 Specificity: 0.3818565400843882 Threshold: 0.32 Accuracy: 0.4540486835568803 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.95it/s]
Loss: 0.584706316071172 AUROC: 0.49897276760623444 AUPRC: 0.26183692201121134 Sensitivity: 0.6660280970625798 Specificity: 0.33462946020128087 Threshold: 0.32 Accuracy: 0.4220276187268441 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6053988076746464 AUROC: 0.50786230875224 AUPRC: 0.2905913808821383 Sensitivity: 0.8291032148900169 Specificity: 0.19971870604781997 Threshold: 0.31 Accuracy: 0.38450074515648286 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.96it/s]
Loss: 0.583080263868455 AUROC: 0.49948331656576916 AUPRC: 0.26122023487260526 Sensitivity: 0.18646232439335889 Specificity: 0.8117566331198536 Threshold: 0.32 Accuracy: 0.6468507915122937 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6116593163460493 AUROC: 0.5061393237998005 AUPRC: 0.2869142227087069 Sensitivity: 0.19627749576988154 Specificity: 0.760196905766526 Threshold: 0.35000000000000003 Accuracy: 0.5946348733233979 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5924579741493348 AUROC: 0.4943294084379991 AUPRC: 0.25839070926976515 Sensitivity: 0.2471264367816092 Specificity: 0.742451967063129 Threshold: 0.35000000000000003 Accuracy: 0.6118221623442236 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.94it/s]
Loss: 0.6139703579246998 AUROC: 0.5059572680693287 AUPRC: 0.28903633746983454 Sensitivity: 0.18274111675126903 Specificity: 0.7791842475386779 Threshold: 0.36 Accuracy: 0.604073522106309 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.96it/s]
Loss: 0.5961795391574982 AUROC: 0.49310864797346166 AUPRC: 0.2586870680179607 Sensitivity: 0.21711366538952745 Specificity: 0.757548032936871 Threshold: 0.36 Accuracy: 0.6150218928932301 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6085456870496273 AUROC: 0.5165736159599811 AUPRC: 0.2933042780411749 Sensitivity: 0.49915397631133673 Specificity: 0.5218002812939522 Threshold: 0.33 Accuracy: 0.5151515151515151 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5870072976235421 AUROC: 0.5004501535955617 AUPRC: 0.26285893198563304 Sensitivity: 0.4878671775223499 Specificity: 0.49428179322964316 Threshold: 0.33 Accuracy: 0.49259009767598516 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.94it/s]
Loss: 0.6120611950755119 AUROC: 0.49890112113012586 AUPRC: 0.28540975089724907 Sensitivity: 0.41624365482233505 Specificity: 0.5822784810126582 Threshold: 0.35000000000000003 Accuracy: 0.533532041728763 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.95it/s]
Loss: 0.5935999427431373 AUROC: 0.4910041580053726 AUPRC: 0.25714937994010667 Sensitivity: 0.438058748403576 Specificity: 0.5391125343092407 Threshold: 0.35000000000000003 Accuracy: 0.512462108454025 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
Loss: 0.6135357357561588 AUROC: 0.49107212976646886 AUPRC: 0.27949099784804954 Sensitivity: 0.4906937394247039 Specificity: 0.5210970464135021 Threshold: 0.35000000000000003 Accuracy: 0.5121708892200696 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5940064916046717 AUROC: 0.49448116365726863 AUPRC: 0.2603617888725159 Sensitivity: 0.5217113665389528 Specificity: 0.46431838975297346 Threshold: 0.35000000000000003 Accuracy: 0.4794543617379589 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6096223499625921 AUROC: 0.4923935211958087 AUPRC: 0.28132218413619803 Sensitivity: 0.2825719120135364 Specificity: 0.6933895921237694 Threshold: 0.34 Accuracy: 0.5727769498261301 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.589149784657263 AUROC: 0.496440105910245 AUPRC: 0.26230802143698706 Sensitivity: 0.3173690932311622 Specificity: 0.6701738334858188 Threshold: 0.34 Accuracy: 0.5771303469181542 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6082488242536783 AUROC: 0.4925261957967735 AUPRC: 0.28358094005099055 Sensitivity: 0.2673434856175973 Specificity: 0.7053445850914205 Threshold: 0.34 Accuracy: 0.5767511177347243 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5888582416760024 AUROC: 0.49654906586556274 AUPRC: 0.26113482056534204 Sensitivity: 0.29246487867177523 Specificity: 0.6898444647758463 Threshold: 0.34 Accuracy: 0.5850454698551701 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6072896076366305 AUROC: 0.49441219797192293 AUPRC: 0.2855526690027088 Sensitivity: 0.39593908629441626 Specificity: 0.6040787623066104 Threshold: 0.33 Accuracy: 0.5429706905116741 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.95it/s]
Loss: 0.5864714976920876 AUROC: 0.5013080306700366 AUPRC: 0.26186182686072 Sensitivity: 0.42337164750957856 Specificity: 0.565416285452882 Threshold: 0.33 Accuracy: 0.5279555405860559 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
Loss: 0.6086727064102888 AUROC: 0.4899072110727961 AUPRC: 0.2788942955798981 Sensitivity: 0.4128595600676819 Specificity: 0.590014064697609 Threshold: 0.33 Accuracy: 0.5380029806259314 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.586369453899322 AUROC: 0.5020587735257105 AUPRC: 0.2662287714327822 Sensitivity: 0.4278416347381865 Specificity: 0.5601555352241537 Threshold: 0.33 Accuracy: 0.5252610306500505 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6082743406295776 AUROC: 0.490640193621624 AUPRC: 0.279393120050184 Sensitivity: 0.36209813874788493 Specificity: 0.6526019690576652 Threshold: 0.34 Accuracy: 0.5673124689518132 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.96it/s]
Loss: 0.5888019633549516 AUROC: 0.5064091384977432 AUPRC: 0.2661599360575106 Sensitivity: 0.37547892720306514 Specificity: 0.6219121683440073 Threshold: 0.34 Accuracy: 0.5569215223981139 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6110725272446871 AUROC: 0.49727511357659787 AUPRC: 0.28536487917438036 Sensitivity: 0.5363790186125211 Specificity: 0.4549929676511955 Threshold: 0.34 Accuracy: 0.47888723298559366 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5907528999672141 AUROC: 0.514644670777349 AUPRC: 0.2707679238604471 Sensitivity: 0.5613026819923371 Specificity: 0.45128087831655994 Threshold: 0.34 Accuracy: 0.4802963960929606 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.60872458294034 AUROC: 0.5011411205589706 AUPRC: 0.28928551955510245 Sensitivity: 0.5617597292724196 Specificity: 0.4360056258790436 Threshold: 0.32 Accuracy: 0.47292598112270245 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5848632634326976 AUROC: 0.5191395610520448 AUPRC: 0.2741546018293163 Sensitivity: 0.5842911877394636 Specificity: 0.44053064958828914 Threshold: 0.32 Accuracy: 0.4784439205119569 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6124667897820473 AUROC: 0.5112821007089464 AUPRC: 0.29724741117503184 Sensitivity: 0.43316412859560066 Specificity: 0.5794655414908579 Threshold: 0.35000000000000003 Accuracy: 0.5365126676602087 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.95it/s]
Loss: 0.5916242365555097 AUROC: 0.5259153804718053 AUPRC: 0.2783031084883221 Sensitivity: 0.4482758620689655 Specificity: 0.5958371454711803 Threshold: 0.35000000000000003 Accuracy: 0.5569215223981139 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6074395999312401 AUROC: 0.5216223902370531 AUPRC: 0.30887682091015994 Sensitivity: 0.5397631133671743 Specificity: 0.47960618846694797 Threshold: 0.3 Accuracy: 0.4972677595628415 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.97it/s]
Loss: 0.5795800067404265 AUROC: 0.5350552365628714 AUPRC: 0.28408298134464954 Sensitivity: 0.5491698595146871 Specificity: 0.5016010978957 Threshold: 0.3 Accuracy: 0.5141461771640283 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6052365358918905 AUROC: 0.5315170596928613 AUPRC: 0.3169767828634037 Sensitivity: 0.4720812182741117 Specificity: 0.5513361462728551 Threshold: 0.33 Accuracy: 0.5280675608544461 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5848036366765217 AUROC: 0.5379848864070558 AUPRC: 0.2846875665764156 Sensitivity: 0.4763729246487867 Specificity: 0.5770814272644099 Threshold: 0.33 Accuracy: 0.5505220613001011 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6028080992400646 AUROC: 0.5439474204011889 AUPRC: 0.32910326129520634 Sensitivity: 0.5786802030456852 Specificity: 0.47960618846694797 Threshold: 0.3 Accuracy: 0.5086934923000497 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5791779330340765 AUROC: 0.548506240805591 AUPRC: 0.2906304451454959 Sensitivity: 0.5683269476372924 Specificity: 0.505946935041171 Threshold: 0.3 Accuracy: 0.5223981138430448 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.6034620758146048 AUROC: 0.5494787018593482 AUPRC: 0.3396830014244735 Sensitivity: 0.544839255499154 Specificity: 0.5239099859353024 Threshold: 0.31 Accuracy: 0.5300546448087432 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5802536023560391 AUROC: 0.5503627227252491 AUPRC: 0.2887443166192693 Sensitivity: 0.5242656449553001 Specificity: 0.5505489478499542 Threshold: 0.31 Accuracy: 0.5436173795890872 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.94it/s]
Loss: 0.6092495862394571 AUROC: 0.551518202003327 AUPRC: 0.33519318745024923 Sensitivity: 0.5245346869712352 Specificity: 0.5576652601969058 Threshold: 0.35000000000000003 Accuracy: 0.5479384003974168 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5910849507137012 AUROC: 0.5563230951871833 AUPRC: 0.2939520858679471 Sensitivity: 0.49936143039591313 Specificity: 0.5910338517840805 Threshold: 0.35000000000000003 Accuracy: 0.5668575277871337 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.606405958533287 AUROC: 0.5579996239894717 AUPRC: 0.3400815692872875 Sensitivity: 0.5516074450084603 Specificity: 0.5246132208157525 Threshold: 0.32 Accuracy: 0.5325384997516145 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5838605812800828 AUROC: 0.560458096279704 AUPRC: 0.29677800446632135 Sensitivity: 0.5523627075351213 Specificity: 0.5606129917657823 Threshold: 0.32 Accuracy: 0.5584371842371169 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.6072099134325981 AUROC: 0.5602711559467969 AUPRC: 0.3420147505829509 Sensitivity: 0.5617597292724196 Specificity: 0.5316455696202531 Threshold: 0.33 Accuracy: 0.5404868355688028 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5869801233532608 AUROC: 0.5603925158240235 AUPRC: 0.29802029327904267 Sensitivity: 0.5376756066411239 Specificity: 0.5617566331198536 Threshold: 0.33 Accuracy: 0.5554058605591108 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6055924464017153 AUROC: 0.5640027034681022 AUPRC: 0.3482924122032902 Sensitivity: 0.5194585448392555 Specificity: 0.5562587904360057 Threshold: 0.32 Accuracy: 0.5454545454545454 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5846613898713101 AUROC: 0.5623113649030929 AUPRC: 0.2996959352212517 Sensitivity: 0.5517241379310345 Specificity: 0.537740164684355 Threshold: 0.31 Accuracy: 0.5414280902660829 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.6095598135143518 AUROC: 0.5629282176862977 AUPRC: 0.34534906750649513 Sensitivity: 0.55668358714044 Specificity: 0.5274261603375527 Threshold: 0.33 Accuracy: 0.5360158966716344 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.95it/s]
Loss: 0.5889879333716567 AUROC: 0.561148005594641 AUPRC: 0.29918353834094735 Sensitivity: 0.5325670498084292 Specificity: 0.5626715462031107 Threshold: 0.33 Accuracy: 0.5547322330751094 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6082155769690871 AUROC: 0.5639658163593138 AUPRC: 0.3481052473698812 Sensitivity: 0.5583756345177665 Specificity: 0.5428973277074542 Threshold: 0.32 Accuracy: 0.5474416294088426 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5872682797652419 AUROC: 0.5611997104527944 AUPRC: 0.3002977376063485 Sensitivity: 0.5210727969348659 Specificity: 0.5741079597438243 Threshold: 0.32 Accuracy: 0.5601212529471202 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6125499783083797 AUROC: 0.5594822477814189 AUPRC: 0.3436032209103156 Sensitivity: 0.544839255499154 Specificity: 0.5274261603375527 Threshold: 0.33 Accuracy: 0.5325384997516145 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5903429215954196 AUROC: 0.5566162354423073 AUPRC: 0.29832957490384104 Sensitivity: 0.5159642401021711 Specificity: 0.5583257090576396 Threshold: 0.33 Accuracy: 0.5471539238800943 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6158356815576553 AUROC: 0.5580650688599028 AUPRC: 0.34509932488347095 Sensitivity: 0.5431472081218274 Specificity: 0.5351617440225035 Threshold: 0.33 Accuracy: 0.5375062096373572 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.00it/s]
Loss: 0.5953323491798934 AUROC: 0.560215638470284 AUPRC: 0.30060110498300296 Sensitivity: 0.5306513409961686 Specificity: 0.5580969807868252 Threshold: 0.33 Accuracy: 0.5508588750421017 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.6171512696892023 AUROC: 0.5560803044257391 AUPRC: 0.3436561342213442 Sensitivity: 0.5363790186125211 Specificity: 0.5281293952180028 Threshold: 0.32 Accuracy: 0.5305514157973175 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5938796734297147 AUROC: 0.5551595898198101 AUPRC: 0.2988784135920722 Sensitivity: 0.545338441890166 Specificity: 0.5198993595608418 Threshold: 0.31 Accuracy: 0.5266082856180532 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
Loss: 0.6291347797960043 AUROC: 0.5559791623532547 AUPRC: 0.34033714734645465 Sensitivity: 0.5313028764805414 Specificity: 0.5457102672292545 Threshold: 0.37 Accuracy: 0.5414803775459514 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.6103070153984972 AUROC: 0.55914159419223 AUPRC: 0.30095060779137006 Sensitivity: 0.5427841634738186 Specificity: 0.5416285452881976 Threshold: 0.36 Accuracy: 0.5419333108790839 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0039.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6227582888677716 AUROC: 0.5564622644877095 AUPRC: 0.3428485727407886 Sensitivity: 0.5228426395939086 Specificity: 0.5520393811533052 Threshold: 0.33 Accuracy: 0.5434674615002484 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5976762329378436 AUROC: 0.5609841274849005 AUPRC: 0.3035490371725522 Sensitivity: 0.5344827586206896 Specificity: 0.5544373284537969 Threshold: 0.32 Accuracy: 0.5491748063320984 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0040.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6335678491741419 AUROC: 0.5512540427081325 AUPRC: 0.3403403061521699 Sensitivity: 0.5245346869712352 Specificity: 0.5407876230661041 Threshold: 0.37 Accuracy: 0.5360158966716344 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.6114827432940083 AUROC: 0.5594595644639813 AUPRC: 0.30348099346826135 Sensitivity: 0.5421455938697318 Specificity: 0.5418572735590119 Threshold: 0.36 Accuracy: 0.5419333108790839 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0041.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6203916743397713 AUROC: 0.5526771711633243 AUPRC: 0.34236350772651203 Sensitivity: 0.5363790186125211 Specificity: 0.5316455696202531 Threshold: 0.3 Accuracy: 0.5330352707401887 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5934630956060143 AUROC: 0.5569450871036984 AUPRC: 0.3022301766823764 Sensitivity: 0.5408684546615581 Specificity: 0.5320219579139982 Threshold: 0.29 Accuracy: 0.5343550016840687 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0042.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 5.00it/s]
Loss: 0.6223787106573582 AUROC: 0.551463466293512 AUPRC: 0.33948203066592164 Sensitivity: 0.5093062605752962 Specificity: 0.5386779184247539 Threshold: 0.31 Accuracy: 0.5300546448087432 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.5970357291160091 AUROC: 0.5528912217419805 AUPRC: 0.2995341593759724 Sensitivity: 0.5210727969348659 Specificity: 0.5375114364135407 Threshold: 0.3 Accuracy: 0.5331761535870664 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0043.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
Loss: 0.6298506520688534 AUROC: 0.5496119714136806 AUPRC: 0.33790638956450325 Sensitivity: 0.5262267343485617 Specificity: 0.5365682137834037 Threshold: 0.33 Accuracy: 0.533532041728763 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.6047234743513087 AUROC: 0.556018124159431 AUPRC: 0.3006219411202311 Sensitivity: 0.5434227330779055 Specificity: 0.5340805123513266 Threshold: 0.32 Accuracy: 0.5365442910070731 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0044.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6355092227458954 AUROC: 0.5483530500879341 AUPRC: 0.3358649867540746 Sensitivity: 0.5397631133671743 Specificity: 0.5232067510548524 Threshold: 0.32 Accuracy: 0.5280675608544461 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 5.01it/s]
Loss: 0.6086764524700821 AUROC: 0.5536633622296303 AUPRC: 0.299786794223615 Sensitivity: 0.5255427841634738 Specificity: 0.5512351326623971 Threshold: 0.32 Accuracy: 0.5444594139440889 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0045.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.98it/s]
Loss: 0.6340854661539197 AUROC: 0.546157672161656 AUPRC: 0.3350704150485493 Sensitivity: 0.5177664974619289 Specificity: 0.5372714486638537 Threshold: 0.3 Accuracy: 0.531544957774466 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.98it/s]
Loss: 0.6033331658891452 AUROC: 0.5511623222901104 AUPRC: 0.2982490411781573 Sensitivity: 0.5395913154533845 Specificity: 0.5137236962488564 Threshold: 0.29 Accuracy: 0.5205456382620411 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0046.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
Loss: 0.6449430678039789 AUROC: 0.5478306810312208 AUPRC: 0.3363499891638708 Sensitivity: 0.5177664974619289 Specificity: 0.5323488045007032 Threshold: 0.34 Accuracy: 0.5280675608544461 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.617718558157644 AUROC: 0.5552187436829517 AUPRC: 0.3006962796678232 Sensitivity: 0.5370370370370371 Specificity: 0.5400274473924978 Threshold: 0.33 Accuracy: 0.5392388009430785 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0047.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.97it/s]
Loss: 0.640267277136445 AUROC: 0.5488861283052635 AUPRC: 0.33696942633427635 Sensitivity: 0.5313028764805414 Specificity: 0.5309423347398031 Threshold: 0.31 Accuracy: 0.5310481867858917 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.94it/s]
Loss: 0.610639407750099 AUROC: 0.5525815037992847 AUPRC: 0.3004672008773376 Sensitivity: 0.5363984674329502 Specificity: 0.5228728270814272 Threshold: 0.3 Accuracy: 0.5264398787470529 Intermediate Model: ./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0048.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.99it/s]
Loss: 0.6394903808832169 AUROC: 0.5504472859417279 AUPRC: 0.33894206036750546 Sensitivity: 0.5313028764805414 Specificity: 0.5232067510548524 Threshold: 0.31 Accuracy: 0.5255837059115748 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.6101284389213849 AUROC: 0.5547856059517258 AUPRC: 0.30227901252717626 Sensitivity: 0.5395913154533845 Specificity: 0.5324794144556267 Threshold: 0.3 Accuracy: 0.5343550016840687 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 28, 0.602 Epoch with best model Test AUROC: 32, 0.5623 Epoch with best model Test Accuracy: 5, 0.6588
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 28, 0.602
Best Model Based on Validation Loss:
./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0028.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.95it/s]
Loss: 0.5802536023560391 AUROC: 0.5503627227252491 AUPRC: 0.2887443166192693 Sensitivity: 0.5242656449553001 Specificity: 0.5505489478499542 Threshold: 0.31 Accuracy: 0.5436173795890872
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.5503627227252491
best_model_val_test_auprc: 0.2887443166192693
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 32, 0.5623
Best Model Based on Model AUROC:
./vitaldb_cache/models/ECG_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_61eeadca_0032.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:18<00:00, 4.99it/s]
Loss: 0.5846613898713101 AUROC: 0.5623113649030929 AUPRC: 0.2996959352212517 Sensitivity: 0.5517241379310345 Specificity: 0.537740164684355 Threshold: 0.31 Accuracy: 0.5414280902660829
best_model_auroc_test_auroc: 0.5623113649030929
best_model_auroc_test_auprc: 0.2996959352212517 Total Processing Time: 3890.9850 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=16,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 16
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.46it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.59it/s]
[2024-05-03 06:14:32.300023] Completed epoch 0 with training loss 0.46427870, validation loss 0.56479722 Validation loss improved to 0.56479722. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.50it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.55it/s]
[2024-05-03 06:15:43.287527] Completed epoch 1 with training loss 0.44137320, validation loss 0.56577569 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:04<00:00, 11.37it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.55it/s]
[2024-05-03 06:16:54.960424] Completed epoch 2 with training loss 0.44208810, validation loss 0.54471248 Validation loss improved to 0.54471248. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.47it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.36it/s]
[2024-05-03 06:18:06.172752] Completed epoch 3 with training loss 0.43071395, validation loss 0.60034031 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.58it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.56it/s]
[2024-05-03 06:19:16.707031] Completed epoch 4 with training loss 0.43046755, validation loss 0.56501669 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.47it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.52it/s]
[2024-05-03 06:20:27.857133] Completed epoch 5 with training loss 0.43012673, validation loss 0.52183998 Validation loss improved to 0.52183998. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:02<00:00, 11.67it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.57it/s]
[2024-05-03 06:21:37.930438] Completed epoch 6 with training loss 0.42647627, validation loss 0.49967971 Validation loss improved to 0.49967971. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:04<00:00, 11.44it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.55it/s]
[2024-05-03 06:22:49.277354] Completed epoch 7 with training loss 0.42027634, validation loss 0.58078897 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.56it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.58it/s]
[2024-05-03 06:23:59.875331] Completed epoch 8 with training loss 0.42419195, validation loss 0.54313201 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.52it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.58it/s]
[2024-05-03 06:25:10.702298] Completed epoch 9 with training loss 0.41805944, validation loss 0.49687782 Validation loss improved to 0.49687782. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.51it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.61it/s]
[2024-05-03 06:26:21.619229] Completed epoch 10 with training loss 0.41601962, validation loss 0.47917163 Validation loss improved to 0.47917163. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.57it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.45it/s]
[2024-05-03 06:27:32.284775] Completed epoch 11 with training loss 0.41419148, validation loss 0.50783771 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.60it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.49it/s]
[2024-05-03 06:28:42.698760] Completed epoch 12 with training loss 0.41085613, validation loss 0.49830845 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.57it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.55it/s]
[2024-05-03 06:29:53.245055] Completed epoch 13 with training loss 0.41175148, validation loss 0.55211008 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.55it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.58it/s]
[2024-05-03 06:31:03.919247] Completed epoch 14 with training loss 0.40905124, validation loss 0.58748448 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.58it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.54it/s]
[2024-05-03 06:32:14.436035] Completed epoch 15 with training loss 0.40963259, validation loss 0.54028380 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:04<00:00, 11.43it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.58it/s]
[2024-05-03 06:33:25.749903] Completed epoch 16 with training loss 0.40269184, validation loss 0.52737683 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.57it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.66it/s]
[2024-05-03 06:34:36.256895] Completed epoch 17 with training loss 0.39987233, validation loss 0.52424586 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.60it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.57it/s]
[2024-05-03 06:35:46.637686] Completed epoch 18 with training loss 0.40157214, validation loss 0.53745741 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:02<00:00, 11.67it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.56it/s]
[2024-05-03 06:36:56.645673] Completed epoch 19 with training loss 0.39802438, validation loss 0.56306547 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:02<00:00, 11.64it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.30it/s]
[2024-05-03 06:38:06.912455] Completed epoch 20 with training loss 0.39602986, validation loss 0.59753639 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.57it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.53it/s]
[2024-05-03 06:39:17.492149] Completed epoch 21 with training loss 0.39073965, validation loss 0.55139452 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.52it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.61it/s]
[2024-05-03 06:40:28.304582] Completed epoch 22 with training loss 0.38999051, validation loss 0.58480716 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.60it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.50it/s]
[2024-05-03 06:41:38.732232] Completed epoch 23 with training loss 0.38815603, validation loss 0.53862661 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.58it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.54it/s]
[2024-05-03 06:42:49.249890] Completed epoch 24 with training loss 0.38575214, validation loss 0.50243193 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.56it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.51it/s]
[2024-05-03 06:43:59.867794] Completed epoch 25 with training loss 0.38557208, validation loss 0.54632640 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.54it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.57it/s]
[2024-05-03 06:45:10.622002] Completed epoch 26 with training loss 0.38016069, validation loss 0.63108587 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.54it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.61it/s]
[2024-05-03 06:46:21.312400] Completed epoch 27 with training loss 0.37705559, validation loss 0.64757395 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.63it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.56it/s]
[2024-05-03 06:47:31.560538] Completed epoch 28 with training loss 0.37635654, validation loss 0.52225804 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:02<00:00, 11.69it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.50it/s]
[2024-05-03 06:48:41.495197] Completed epoch 29 with training loss 0.37464169, validation loss 0.55431569 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 733/733 [01:03<00:00, 11.62it/s] 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.59it/s]
[2024-05-03 06:49:51.797746] Completed epoch 30 with training loss 0.37373674, validation loss 0.57820690 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 10, 0.4792
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0000.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:06<00:00, 19.39it/s]
Loss: 0.5646312512930424 AUROC: 0.8432571555041516 AUPRC: 0.6996708839693659 Sensitivity: 0.7648054145516074 Specificity: 0.7672292545710268 Threshold: 0.14 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:22<00:00, 16.37it/s]
Loss: 0.5299453399975294 AUROC: 0.8350500368652718 AUPRC: 0.6832027543536515 Sensitivity: 0.7452107279693486 Specificity: 0.779277218664227 Threshold: 0.14 Accuracy: 0.7702930279555406 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0001.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.48it/s]
Loss: 0.5659402249351381 AUROC: 0.8433571076699009 AUPRC: 0.7035607758534287 Sensitivity: 0.7648054145516074 Specificity: 0.7637130801687764 Threshold: 0.13 Accuracy: 0.764033780427223 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.90it/s]
Loss: 0.5315537500766015 AUROC: 0.8360459396204104 AUPRC: 0.6845934498908258 Sensitivity: 0.7496807151979565 Specificity: 0.7703568161024703 Threshold: 0.13 Accuracy: 0.7649040080835298 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0002.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.61it/s]
Loss: 0.544771201672062 AUROC: 0.8453418721040643 AUPRC: 0.7005363151880611 Sensitivity: 0.7580372250423012 Specificity: 0.7637130801687764 Threshold: 0.14 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.93it/s]
Loss: 0.5160410239721739 AUROC: 0.8362572868795854 AUPRC: 0.6813119798494557 Sensitivity: 0.7694763729246488 Specificity: 0.7527447392497713 Threshold: 0.13 Accuracy: 0.7571572920175144 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0003.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.45it/s]
Loss: 0.6008606312412118 AUROC: 0.843856868498647 AUPRC: 0.6957400880300857 Sensitivity: 0.766497461928934 Specificity: 0.7559774964838256 Threshold: 0.1 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.74it/s]
Loss: 0.5672456599091009 AUROC: 0.8353255770203747 AUPRC: 0.6787731925998337 Sensitivity: 0.7503192848020435 Specificity: 0.7708142726440989 Threshold: 0.1 Accuracy: 0.7654092286965308 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0004.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.54it/s]
Loss: 0.5655016441430364 AUROC: 0.8406560193812009 AUPRC: 0.6878988689336261 Sensitivity: 0.7580372250423012 Specificity: 0.7616033755274262 Threshold: 0.13 Accuracy: 0.7605563835072032 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:21<00:00, 17.69it/s]
Loss: 0.5378331977633699 AUROC: 0.8320855519683484 AUPRC: 0.6721539585500341 Sensitivity: 0.7650063856960408 Specificity: 0.7538883806038427 Threshold: 0.12 Accuracy: 0.7568204782755137 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0005.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.54it/s]
Loss: 0.5218310578474923 AUROC: 0.8429656283540495 AUPRC: 0.6819745543764109 Sensitivity: 0.7698815566835872 Specificity: 0.7623066104078763 Threshold: 0.16 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.77it/s]
Loss: 0.4993946534000658 AUROC: 0.8327071787375601 AUPRC: 0.6672492694692951 Sensitivity: 0.7675606641123882 Specificity: 0.7548032936870998 Threshold: 0.15 Accuracy: 0.7581677332435164 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0006.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.44it/s]
Loss: 0.5000647974629251 AUROC: 0.839057974635948 AUPRC: 0.6749604678667589 Sensitivity: 0.766497461928934 Specificity: 0.7623066104078763 Threshold: 0.2 Accuracy: 0.7635370094386488 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.80it/s]
Loss: 0.47910965144914647 AUROC: 0.8295370428793939 AUPRC: 0.6603395289172501 Sensitivity: 0.7675606641123882 Specificity: 0.7518298261665142 Threshold: 0.19 Accuracy: 0.7559784439205119 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0007.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.44it/s]
Loss: 0.582275730513391 AUROC: 0.8390889122110609 AUPRC: 0.6701346626208169 Sensitivity: 0.766497461928934 Specificity: 0.770745428973277 Threshold: 0.12 Accuracy: 0.76949826130154 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.72it/s]
Loss: 0.5498181640155493 AUROC: 0.8308283498029373 AUPRC: 0.6566596229371556 Sensitivity: 0.7618135376756067 Specificity: 0.7564043915827996 Threshold: 0.11 Accuracy: 0.7578309195015157 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0008.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.52it/s]
Loss: 0.5430742655954663 AUROC: 0.8358238081299187 AUPRC: 0.6612878019315273 Sensitivity: 0.7749576988155669 Specificity: 0.7573839662447257 Threshold: 0.15 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:21<00:00, 17.65it/s]
Loss: 0.5151498105967798 AUROC: 0.827534575067859 AUPRC: 0.6480959863641185 Sensitivity: 0.7650063856960408 Specificity: 0.7415370539798719 Threshold: 0.14 Accuracy: 0.7477265072414955 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0009.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.40it/s]
Loss: 0.496976894045633 AUROC: 0.8356774496015003 AUPRC: 0.6541513980651265 Sensitivity: 0.7681895093062606 Specificity: 0.7644163150492265 Threshold: 0.2 Accuracy: 0.7655240933929458 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:21<00:00, 17.69it/s]
Loss: 0.4763178059891347 AUROC: 0.8262962875327611 AUPRC: 0.6417454391094475 Sensitivity: 0.7618135376756067 Specificity: 0.7413083257090577 Threshold: 0.18 Accuracy: 0.7467160660154935 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0010.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.39it/s]
Loss: 0.4797885168402914 AUROC: 0.8319316231993736 AUPRC: 0.6579487176374711 Sensitivity: 0.7495769881556683 Specificity: 0.7672292545710268 Threshold: 0.23 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:21<00:00, 17.19it/s]
Loss: 0.4606594289302505 AUROC: 0.8248021777969408 AUPRC: 0.6469733860659582 Sensitivity: 0.7490421455938697 Specificity: 0.7605215004574566 Threshold: 0.22 Accuracy: 0.757494105759515 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0011.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 16.42it/s]
Loss: 0.5081103464204167 AUROC: 0.8316662739974441 AUPRC: 0.6542513893508938 Sensitivity: 0.7445008460236887 Specificity: 0.7651195499296765 Threshold: 0.18 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.73it/s]
Loss: 0.48352636504537794 AUROC: 0.8259145625418458 AUPRC: 0.6441377049643514 Sensitivity: 0.7426564495530013 Specificity: 0.7612076852698993 Threshold: 0.17 Accuracy: 0.7563152576625126 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0012.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.67it/s]
Loss: 0.49815774827249465 AUROC: 0.8227193652561512 AUPRC: 0.6419404911049312 Sensitivity: 0.7580372250423012 Specificity: 0.7369901547116737 Threshold: 0.21 Accuracy: 0.7431693989071039 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.75it/s]
Loss: 0.47386968642553334 AUROC: 0.8181288187104984 AUPRC: 0.6311479051383327 Sensitivity: 0.7407407407407407 Specificity: 0.7598353156450137 Threshold: 0.21 Accuracy: 0.7547995958235096 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0013.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.47it/s]
Loss: 0.5521334520881138 AUROC: 0.8252491069749953 AUPRC: 0.6411144325543872 Sensitivity: 0.7428087986463621 Specificity: 0.7573839662447257 Threshold: 0.14 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.79it/s]
Loss: 0.5217603805865492 AUROC: 0.8197862223203739 AUPRC: 0.6344268784968776 Sensitivity: 0.7471264367816092 Specificity: 0.7479414455626715 Threshold: 0.13 Accuracy: 0.7477265072414955 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0014.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.59it/s]
Loss: 0.5879785529973488 AUROC: 0.8264532925909267 AUPRC: 0.6414930163034218 Sensitivity: 0.7377326565143824 Specificity: 0.7637130801687764 Threshold: 0.11 Accuracy: 0.7560854446100348 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.77it/s]
Loss: 0.5543632323938792 AUROC: 0.8210329812729095 AUPRC: 0.6344647629623528 Sensitivity: 0.7464878671775224 Specificity: 0.7541171088746569 Threshold: 0.1 Accuracy: 0.7521050858875042 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0015.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.48it/s]
Loss: 0.5405129209633858 AUROC: 0.8240895428616304 AUPRC: 0.6381106078998308 Sensitivity: 0.7495769881556683 Specificity: 0.7468354430379747 Threshold: 0.14 Accuracy: 0.7476403378042722 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.73it/s]
Loss: 0.5088965280972901 AUROC: 0.8200162651214801 AUPRC: 0.6330508289223956 Sensitivity: 0.7528735632183908 Specificity: 0.7383348581884721 Threshold: 0.13 Accuracy: 0.7421690804984843 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0016.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.46it/s]
Loss: 0.5268748092745977 AUROC: 0.8276884157819709 AUPRC: 0.6487002659201693 Sensitivity: 0.7563451776649747 Specificity: 0.7447257383966245 Threshold: 0.14 Accuracy: 0.7481371087928465 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.71it/s]
Loss: 0.49903973294622317 AUROC: 0.8232802438366057 AUPRC: 0.6451177650058867 Sensitivity: 0.7401021711366539 Specificity: 0.7616651418115279 Threshold: 0.14 Accuracy: 0.7559784439205119 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0017.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.56it/s]
Loss: 0.5242592451118288 AUROC: 0.8065187850576272 AUPRC: 0.6118930076596524 Sensitivity: 0.7292724196277496 Specificity: 0.7412095639943741 Threshold: 0.18 Accuracy: 0.7377049180327869 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.81it/s]
Loss: 0.48998937834935485 AUROC: 0.8066084943194766 AUPRC: 0.6102349714672867 Sensitivity: 0.743933588761175 Specificity: 0.7301006404391582 Threshold: 0.17 Accuracy: 0.7337487369484675 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0018.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.55it/s]
Loss: 0.5365407565638186 AUROC: 0.8173409868134536 AUPRC: 0.6283924462186842 Sensitivity: 0.7495769881556683 Specificity: 0.750351617440225 Threshold: 0.15 Accuracy: 0.7501241927471436 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.81it/s]
Loss: 0.5021964346549364 AUROC: 0.8155036286878417 AUPRC: 0.632007503114057 Sensitivity: 0.7522349936143039 Specificity: 0.7408508691674291 Threshold: 0.14 Accuracy: 0.7438531492084877 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0019.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.54it/s]
Loss: 0.5638389134454349 AUROC: 0.8132964938208143 AUPRC: 0.6183100805144278 Sensitivity: 0.7377326565143824 Specificity: 0.750351617440225 Threshold: 0.13 Accuracy: 0.7466467958271237 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.76it/s]
Loss: 0.5255385929698585 AUROC: 0.8112327197690166 AUPRC: 0.6233581389120383 Sensitivity: 0.7394636015325671 Specificity: 0.7406221408966148 Threshold: 0.12 Accuracy: 0.7403166049174806 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0020.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.43it/s]
Loss: 0.5979138128459454 AUROC: 0.8143995373642614 AUPRC: 0.6298329226730506 Sensitivity: 0.7360406091370558 Specificity: 0.7433192686357243 Threshold: 0.1 Accuracy: 0.7411823149528067 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:21<00:00, 17.69it/s]
Loss: 0.555531912686063 AUROC: 0.813310700042883 AUPRC: 0.6336355761549006 Sensitivity: 0.7528735632183908 Specificity: 0.7303293687099726 Threshold: 0.09 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0021.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.38it/s]
Loss: 0.5519765944234909 AUROC: 0.8010202260346835 AUPRC: 0.605080638049942 Sensitivity: 0.727580372250423 Specificity: 0.7482419127988749 Threshold: 0.15 Accuracy: 0.7421758569299552 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:21<00:00, 17.29it/s]
Loss: 0.5143294825208604 AUROC: 0.7992330299981655 AUPRC: 0.6038699317943269 Sensitivity: 0.7260536398467433 Specificity: 0.7323879231473011 Threshold: 0.14 Accuracy: 0.7307174132704615 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0022.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.43it/s]
Loss: 0.5839253870977296 AUROC: 0.8007679658068401 AUPRC: 0.6084093610445456 Sensitivity: 0.7326565143824028 Specificity: 0.7355836849507735 Threshold: 0.12 Accuracy: 0.7347242921013413 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.83it/s]
Loss: 0.5410315105741623 AUROC: 0.8006380437919699 AUPRC: 0.6085859522315844 Sensitivity: 0.7381864623243933 Specificity: 0.7236962488563586 Threshold: 0.11 Accuracy: 0.727517682721455 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0023.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.57it/s]
Loss: 0.5386889436770053 AUROC: 0.8051837097008337 AUPRC: 0.6121716992421912 Sensitivity: 0.7445008460236887 Specificity: 0.7320675105485233 Threshold: 0.15 Accuracy: 0.7357178340784898 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.78it/s]
Loss: 0.5014367549159434 AUROC: 0.8047969255181294 AUPRC: 0.6136202906083548 Sensitivity: 0.7292464878671775 Specificity: 0.7422232387923148 Threshold: 0.15 Accuracy: 0.7388009430784777 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0024.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.43it/s]
Loss: 0.5028507750895288 AUROC: 0.7996851506778898 AUPRC: 0.598704321931369 Sensitivity: 0.7377326565143824 Specificity: 0.7313642756680732 Threshold: 0.21 Accuracy: 0.7332339791356185 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:21<00:00, 17.69it/s]
Loss: 0.47270373430764 AUROC: 0.7981630753699088 AUPRC: 0.6002087259072724 Sensitivity: 0.7337164750957854 Specificity: 0.7232387923147301 Threshold: 0.2 Accuracy: 0.726002020882452 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0025.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.37it/s]
Loss: 0.5459936731864535 AUROC: 0.7891235384970526 AUPRC: 0.5905339293219037 Sensitivity: 0.7241962774957699 Specificity: 0.729957805907173 Threshold: 0.16 Accuracy: 0.7282662692498758 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:21<00:00, 17.56it/s]
Loss: 0.5046808610129501 AUROC: 0.7917093158716971 AUPRC: 0.5929085790321638 Sensitivity: 0.7145593869731801 Specificity: 0.7339890210430009 Threshold: 0.16 Accuracy: 0.7288649376894577 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0026.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.53it/s]
Loss: 0.6308538745793085 AUROC: 0.808651692880312 AUPRC: 0.6144149202634928 Sensitivity: 0.7495769881556683 Specificity: 0.7355836849507735 Threshold: 0.08 Accuracy: 0.739692001987084 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.83it/s]
Loss: 0.5868817436626501 AUROC: 0.8064428635026799 AUPRC: 0.6192978839006972 Sensitivity: 0.7241379310344828 Specificity: 0.7488563586459286 Threshold: 0.08 Accuracy: 0.7423374873694847 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0027.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.52it/s]
Loss: 0.6476328749032247 AUROC: 0.8034274073598111 AUPRC: 0.6085295679544824 Sensitivity: 0.7326565143824028 Specificity: 0.7531645569620253 Threshold: 0.08 Accuracy: 0.7471435668156979 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.82it/s]
Loss: 0.5956504615023732 AUROC: 0.8044330927450781 AUPRC: 0.6181139372750332 Sensitivity: 0.7375478927203065 Specificity: 0.7289569990850869 Threshold: 0.07 Accuracy: 0.7312226338834624 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0028.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.62it/s]
Loss: 0.5225583183623496 AUROC: 0.7901980242788571 AUPRC: 0.5860964525034517 Sensitivity: 0.739424703891709 Specificity: 0.7236286919831224 Threshold: 0.19 Accuracy: 0.7282662692498758 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.80it/s]
Loss: 0.4840267402951115 AUROC: 0.7935732467963436 AUPRC: 0.5948964521531073 Sensitivity: 0.7222222222222222 Specificity: 0.7351326623970723 Threshold: 0.19 Accuracy: 0.7317278544964635 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0029.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.31it/s]
Loss: 0.5535199324053431 AUROC: 0.7935547511786027 AUPRC: 0.5874136197788021 Sensitivity: 0.7241962774957699 Specificity: 0.7419127988748242 Threshold: 0.15 Accuracy: 0.7367113760556383 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.82it/s]
Loss: 0.5124261767142803 AUROC: 0.7955224761310511 AUPRC: 0.5956484407597797 Sensitivity: 0.735632183908046 Specificity: 0.7177493138151876 Threshold: 0.13 Accuracy: 0.7224654765914449 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0030.model AUROC/AUPRC on Validation Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 126/126 [00:07<00:00, 17.53it/s]
Loss: 0.5779908263967151 AUROC: 0.7786261812799111 AUPRC: 0.5691662022889968 Sensitivity: 0.7225042301184433 Specificity: 0.7123769338959213 Threshold: 0.13 Accuracy: 0.7153502235469449 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.81it/s]
Loss: 0.5275369864232557 AUROC: 0.7855403712700934 AUPRC: 0.5840876906474293 Sensitivity: 0.7196679438058748 Specificity: 0.7234675205855444 Threshold: 0.13 Accuracy: 0.7224654765914449 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 10, 0.4792 Epoch with best model Test AUROC: 2, 0.8363 Epoch with best model Test Accuracy: 0, 0.7703
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 10, 0.4792
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0010.model
Generate Stats Based on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.81it/s]
Loss: 0.4606594289302505 AUROC: 0.8248021777969408 AUPRC: 0.6469733860659582 Sensitivity: 0.7490421455938697 Specificity: 0.7605215004574566 Threshold: 0.22 Accuracy: 0.757494105759515
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.8248021777969408
best_model_val_test_auprc: 0.6469733860659582
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 2, 0.8363
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_16_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_ac569771_0002.model
Generate Stats Based on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 372/372 [00:20<00:00, 17.76it/s]
Loss: 0.5160410239721739 AUROC: 0.8362572868795854 AUPRC: 0.6813119798494557 Sensitivity: 0.7694763729246488 Specificity: 0.7527447392497713 Threshold: 0.13 Accuracy: 0.7571572920175144
best_model_auroc_test_auroc: 0.8362572868795854
best_model_auroc_test_auprc: 0.6813119798494557 Total Processing Time: 3139.4180 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=32,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 32
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.11it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.26it/s]
[2024-05-03 07:06:39.077809] Completed epoch 0 with training loss 0.46130836, validation loss 0.55918688 Validation loss improved to 0.55918688. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.31it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.29it/s]
[2024-05-03 07:07:36.147134] Completed epoch 1 with training loss 0.43747085, validation loss 0.62058824 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.28it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.27it/s]
[2024-05-03 07:08:33.367380] Completed epoch 2 with training loss 0.43494654, validation loss 0.51534641 Validation loss improved to 0.51534641. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.34it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.27it/s]
[2024-05-03 07:09:30.256936] Completed epoch 3 with training loss 0.43261442, validation loss 0.62596589 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.30it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.30it/s]
[2024-05-03 07:10:27.327804] Completed epoch 4 with training loss 0.42908522, validation loss 0.63625634 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.30it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.29it/s]
[2024-05-03 07:11:24.402343] Completed epoch 5 with training loss 0.42685848, validation loss 0.51814348 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.32it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.30it/s]
[2024-05-03 07:12:21.377080] Completed epoch 6 with training loss 0.42606184, validation loss 0.49967262 Validation loss improved to 0.49967262. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:49<00:00, 7.34it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.31it/s]
[2024-05-03 07:13:18.179963] Completed epoch 7 with training loss 0.42171949, validation loss 0.59224832 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.33it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.33it/s]
[2024-05-03 07:14:15.038087] Completed epoch 8 with training loss 0.42115965, validation loss 0.54418433 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.34it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.29it/s]
[2024-05-03 07:15:11.864911] Completed epoch 9 with training loss 0.41897193, validation loss 0.50482661 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.30it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.30it/s]
[2024-05-03 07:16:08.973043] Completed epoch 10 with training loss 0.41716811, validation loss 0.49452832 Validation loss improved to 0.49452832. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.32it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.30it/s]
[2024-05-03 07:17:05.946563] Completed epoch 11 with training loss 0.41337156, validation loss 0.48242214 Validation loss improved to 0.48242214. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.32it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.20it/s]
[2024-05-03 07:18:03.028478] Completed epoch 12 with training loss 0.40862468, validation loss 0.52564859 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.30it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.29it/s]
[2024-05-03 07:19:00.102849] Completed epoch 13 with training loss 0.41159856, validation loss 0.55376577 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.33it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.29it/s]
[2024-05-03 07:19:56.962018] Completed epoch 14 with training loss 0.40837920, validation loss 0.60347092 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.31it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.28it/s]
[2024-05-03 07:20:54.001255] Completed epoch 15 with training loss 0.40981382, validation loss 0.48894778 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.30it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.29it/s]
[2024-05-03 07:21:51.084752] Completed epoch 16 with training loss 0.40535071, validation loss 0.52776873 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.33it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.30it/s]
[2024-05-03 07:22:47.977275] Completed epoch 17 with training loss 0.40474966, validation loss 0.52278322 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.32it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.26it/s]
[2024-05-03 07:23:44.961769] Completed epoch 18 with training loss 0.40341684, validation loss 0.47492322 Validation loss improved to 0.47492322. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.30it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.30it/s]
[2024-05-03 07:24:42.087989] Completed epoch 19 with training loss 0.39929208, validation loss 0.53396559 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.22it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.23it/s]
[2024-05-03 07:25:39.763580] Completed epoch 20 with training loss 0.39898762, validation loss 0.62939864 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.32it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.27it/s]
[2024-05-03 07:26:36.717944] Completed epoch 21 with training loss 0.39826757, validation loss 0.52058125 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:50<00:00, 7.26it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.14it/s]
[2024-05-03 07:27:34.224696] Completed epoch 22 with training loss 0.39630842, validation loss 0.52194691 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.14it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.14it/s]
[2024-05-03 07:28:32.559951] Completed epoch 23 with training loss 0.39596358, validation loss 0.54950488 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.11it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.12it/s]
[2024-05-03 07:29:31.118848] Completed epoch 24 with training loss 0.39166236, validation loss 0.48991084 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:52<00:00, 7.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.88it/s]
[2024-05-03 07:30:30.443795] Completed epoch 25 with training loss 0.39062333, validation loss 0.51154262 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:52<00:00, 6.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.08it/s]
[2024-05-03 07:31:30.184040] Completed epoch 26 with training loss 0.38996968, validation loss 0.57780081 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.08it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.04it/s]
[2024-05-03 07:32:29.051050] Completed epoch 27 with training loss 0.38614789, validation loss 0.61693615 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.09it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.08it/s]
[2024-05-03 07:33:27.781852] Completed epoch 28 with training loss 0.38632676, validation loss 0.54508722 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.08it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.06it/s]
[2024-05-03 07:34:26.634295] Completed epoch 29 with training loss 0.38825968, validation loss 0.49171034 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.08it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.03it/s]
[2024-05-03 07:35:25.517563] Completed epoch 30 with training loss 0.38285175, validation loss 0.52178621 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.07it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.00it/s]
[2024-05-03 07:36:24.432539] Completed epoch 31 with training loss 0.38279620, validation loss 0.49949405 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.07it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.98it/s]
[2024-05-03 07:37:23.362688] Completed epoch 32 with training loss 0.38229254, validation loss 0.58125818 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.07it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.96it/s]
[2024-05-03 07:38:22.373294] Completed epoch 33 with training loss 0.37640131, validation loss 0.52937979 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.10it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.04it/s]
[2024-05-03 07:39:21.075128] Completed epoch 34 with training loss 0.37844947, validation loss 0.56300360 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:52<00:00, 7.06it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.01it/s]
[2024-05-03 07:40:20.125103] Completed epoch 35 with training loss 0.37538555, validation loss 0.57663137 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.08it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.01it/s]
[2024-05-03 07:41:19.028142] Completed epoch 36 with training loss 0.37073123, validation loss 0.58735400 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.07it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 9.01it/s]
[2024-05-03 07:42:17.949657] Completed epoch 37 with training loss 0.37422794, validation loss 0.59191686 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 367/367 [00:51<00:00, 7.07it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.99it/s]
[2024-05-03 07:43:16.897838] Completed epoch 38 with training loss 0.36979339, validation loss 0.54804021 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 18, 0.4749
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:06<00:00, 10.26it/s]
Loss: 0.558814957974449 AUROC: 0.844115078260166 AUPRC: 0.6969175202188468 Sensitivity: 0.7461928934010152 Specificity: 0.7770745428973277 Threshold: 0.15 Accuracy: 0.7680079483358172 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:21<00:00, 8.79it/s]
Loss: 0.5267640031393497 AUROC: 0.833956712809601 AUPRC: 0.6793330675858575 Sensitivity: 0.7662835249042146 Specificity: 0.7552607502287283 Threshold: 0.14 Accuracy: 0.7581677332435164 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.83it/s]
Loss: 0.6209795706801944 AUROC: 0.8445493942184812 AUPRC: 0.7025352378264782 Sensitivity: 0.7817258883248731 Specificity: 0.7454289732770746 Threshold: 0.09 Accuracy: 0.7560854446100348 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.01it/s]
Loss: 0.5808462722287062 AUROC: 0.8365475059562828 AUPRC: 0.6855612478404828 Sensitivity: 0.7637292464878672 Specificity: 0.7552607502287283 Threshold: 0.09 Accuracy: 0.757494105759515 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.90it/s]
Loss: 0.515695918174017 AUROC: 0.8446207886225879 AUPRC: 0.6990828959761152 Sensitivity: 0.7715736040609137 Specificity: 0.7686357243319268 Threshold: 0.17 Accuracy: 0.76949826130154 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.01it/s]
Loss: 0.4900984772110498 AUROC: 0.8350969948084818 AUPRC: 0.6809192782672582 Sensitivity: 0.764367816091954 Specificity: 0.7541171088746569 Threshold: 0.16 Accuracy: 0.7568204782755137 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.89it/s]
Loss: 0.6264193583102453 AUROC: 0.8450979412233668 AUPRC: 0.702789828264122 Sensitivity: 0.7783417935702199 Specificity: 0.7482419127988749 Threshold: 0.08 Accuracy: 0.7570789865871833 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.00it/s]
Loss: 0.5879656359833735 AUROC: 0.8372709357936666 AUPRC: 0.6862217604280579 Sensitivity: 0.7650063856960408 Specificity: 0.7548032936870998 Threshold: 0.08 Accuracy: 0.757494105759515 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.90it/s]
Loss: 0.6371028851422053 AUROC: 0.8431762418461641 AUPRC: 0.7012128512578311 Sensitivity: 0.7580372250423012 Specificity: 0.770042194092827 Threshold: 0.08 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.97it/s]
Loss: 0.5998029819319165 AUROC: 0.8358794324500858 AUPRC: 0.6842436163032956 Sensitivity: 0.7420178799489144 Specificity: 0.7785910338517841 Threshold: 0.08 Accuracy: 0.7689457729875379 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.87it/s]
Loss: 0.5179893951567393 AUROC: 0.8430191741571296 AUPRC: 0.6924677034884236 Sensitivity: 0.7698815566835872 Specificity: 0.7566807313642757 Threshold: 0.16 Accuracy: 0.7605563835072032 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.00it/s]
Loss: 0.4947226117214849 AUROC: 0.8343896314524452 AUPRC: 0.6763550023213787 Sensitivity: 0.7681992337164751 Specificity: 0.7518298261665142 Threshold: 0.15 Accuracy: 0.7561468507915123 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.91it/s]
Loss: 0.4998969052519117 AUROC: 0.8407024257438702 AUPRC: 0.6912671782627378 Sensitivity: 0.7478849407783418 Specificity: 0.7679324894514767 Threshold: 0.2 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.99it/s]
Loss: 0.4771448570473861 AUROC: 0.8334344061068988 AUPRC: 0.6765939507776564 Sensitivity: 0.7541507024265645 Specificity: 0.7646386093321135 Threshold: 0.19 Accuracy: 0.7618726844055237 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.91it/s]
Loss: 0.5920856240249815 AUROC: 0.8446219785293227 AUPRC: 0.6935938292894753 Sensitivity: 0.7766497461928934 Specificity: 0.7566807313642757 Threshold: 0.1 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.05it/s]
Loss: 0.5605155405217922 AUROC: 0.8361806789753441 AUPRC: 0.6781375436202868 Sensitivity: 0.7490421455938697 Specificity: 0.7735590118938701 Threshold: 0.1 Accuracy: 0.7670932974065342 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.89it/s]
Loss: 0.5441140215548258 AUROC: 0.8419565874426761 AUPRC: 0.6853948494173477 Sensitivity: 0.7698815566835872 Specificity: 0.7587904360056259 Threshold: 0.14 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.00it/s]
Loss: 0.5164377494685112 AUROC: 0.8336472139552872 AUPRC: 0.6705823655571252 Sensitivity: 0.7515964240102171 Specificity: 0.7689844464775847 Threshold: 0.14 Accuracy: 0.7643987874705288 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.91it/s]
Loss: 0.5046135366909088 AUROC: 0.8411284123550397 AUPRC: 0.6782056006126269 Sensitivity: 0.7495769881556683 Specificity: 0.7714486638537271 Threshold: 0.19 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.01it/s]
Loss: 0.4823235634273739 AUROC: 0.8324169596608629 AUPRC: 0.6645127138652718 Sensitivity: 0.7515964240102171 Specificity: 0.7680695333943275 Threshold: 0.18 Accuracy: 0.7637251599865275 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.83it/s]
Loss: 0.4942032841462938 AUROC: 0.8373694969788269 AUPRC: 0.6762197145129724 Sensitivity: 0.7681895093062606 Specificity: 0.759493670886076 Threshold: 0.2 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.96it/s]
Loss: 0.4727263988586523 AUROC: 0.8304410745730115 AUPRC: 0.6656407136992856 Sensitivity: 0.764367816091954 Specificity: 0.7548032936870998 Threshold: 0.19 Accuracy: 0.7573256988885146 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.89it/s]
Loss: 0.48283794924380286 AUROC: 0.8364639779534082 AUPRC: 0.6670420760916844 Sensitivity: 0.7715736040609137 Specificity: 0.7623066104078763 Threshold: 0.23 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.05it/s]
Loss: 0.4613889888009077 AUROC: 0.8297886293713974 AUPRC: 0.6589176250623086 Sensitivity: 0.7618135376756067 Specificity: 0.7568618481244281 Threshold: 0.22 Accuracy: 0.7581677332435164 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.88it/s]
Loss: 0.5259104252807678 AUROC: 0.8335165789705403 AUPRC: 0.6668268282842182 Sensitivity: 0.751269035532995 Specificity: 0.7665260196905767 Threshold: 0.17 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.99it/s]
Loss: 0.4976809254937595 AUROC: 0.8276379117547052 AUPRC: 0.6567122421235916 Sensitivity: 0.7509578544061303 Specificity: 0.7602927721866423 Threshold: 0.16 Accuracy: 0.7578309195015157 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.88it/s]
Loss: 0.553800642490387 AUROC: 0.8347076756123856 AUPRC: 0.6669750079214579 Sensitivity: 0.7529610829103215 Specificity: 0.7679324894514767 Threshold: 0.14 Accuracy: 0.7635370094386488 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.06it/s]
Loss: 0.5237114262837236 AUROC: 0.8279904979908135 AUPRC: 0.6556031316801104 Sensitivity: 0.7573435504469987 Specificity: 0.7543458371454712 Threshold: 0.13 Accuracy: 0.7551364095655103 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.81it/s]
Loss: 0.6040375067128075 AUROC: 0.8375717811237956 AUPRC: 0.6693517766534998 Sensitivity: 0.7715736040609137 Specificity: 0.750351617440225 Threshold: 0.09 Accuracy: 0.756582215598609 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.01it/s]
Loss: 0.5708437273579259 AUROC: 0.8306322657010419 AUPRC: 0.6595712803544035 Sensitivity: 0.7503192848020435 Specificity: 0.7639524245196706 Threshold: 0.09 Accuracy: 0.7603570225665207 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.88it/s]
Loss: 0.48880976911575075 AUROC: 0.8326574663077908 AUPRC: 0.6538748247298727 Sensitivity: 0.7698815566835872 Specificity: 0.749648382559775 Threshold: 0.2 Accuracy: 0.7555886736214605 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.05it/s]
Loss: 0.4654412545984791 AUROC: 0.8268902361363794 AUPRC: 0.6484852423415244 Sensitivity: 0.743933588761175 Specificity: 0.762580054894785 Threshold: 0.2 Accuracy: 0.7576625126305153 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.87it/s]
Loss: 0.5276062140862147 AUROC: 0.8345672666176425 AUPRC: 0.659656155953139 Sensitivity: 0.7428087986463621 Specificity: 0.7665260196905767 Threshold: 0.15 Accuracy: 0.7595628415300546 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:21<00:00, 8.57it/s]
Loss: 0.5006596406981829 AUROC: 0.8287367130199261 AUPRC: 0.6546367195120696 Sensitivity: 0.7452107279693486 Specificity: 0.7648673376029277 Threshold: 0.14 Accuracy: 0.7596833950825194 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.90it/s]
Loss: 0.5232124011667948 AUROC: 0.8259035556793058 AUPRC: 0.6380412024169326 Sensitivity: 0.754653130287648 Specificity: 0.7531645569620253 Threshold: 0.17 Accuracy: 0.7536015896671634 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.05it/s]
Loss: 0.49274538849951116 AUROC: 0.8210264816509097 AUPRC: 0.6337828402593408 Sensitivity: 0.7490421455938697 Specificity: 0.7483989021043 Threshold: 0.16 Accuracy: 0.7485685415964971 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.86it/s]
Loss: 0.47475186463386293 AUROC: 0.8278788008595886 AUPRC: 0.6424540148624521 Sensitivity: 0.7478849407783418 Specificity: 0.750351617440225 Threshold: 0.24 Accuracy: 0.7496274217585693 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.97it/s]
Loss: 0.4538284193283768 AUROC: 0.8226143612142287 AUPRC: 0.6418237493211623 Sensitivity: 0.7432950191570882 Specificity: 0.7564043915827996 Threshold: 0.23 Accuracy: 0.7529471202425059 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.87it/s]
Loss: 0.5336119589351472 AUROC: 0.8267900361969629 AUPRC: 0.6353857785810267 Sensitivity: 0.7495769881556683 Specificity: 0.7559774964838256 Threshold: 0.15 Accuracy: 0.7540983606557377 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.03it/s]
Loss: 0.5039222880557019 AUROC: 0.8206050286333909 AUPRC: 0.6339135901786375 Sensitivity: 0.7432950191570882 Specificity: 0.7518298261665142 Threshold: 0.14 Accuracy: 0.7495789828224991 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.86it/s]
Loss: 0.6295018106225937 AUROC: 0.8303954536043465 AUPRC: 0.6499923448359972 Sensitivity: 0.7580372250423012 Specificity: 0.7587904360056259 Threshold: 0.08 Accuracy: 0.7585692995529061 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.03it/s]
Loss: 0.5912910827425539 AUROC: 0.8243325253353805 AUPRC: 0.6455717560491145 Sensitivity: 0.7394636015325671 Specificity: 0.7646386093321135 Threshold: 0.08 Accuracy: 0.757999326372516 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.87it/s]
Loss: 0.5208025636180998 AUROC: 0.8222029457331134 AUPRC: 0.6335328680985912 Sensitivity: 0.7411167512690355 Specificity: 0.7609001406469761 Threshold: 0.17 Accuracy: 0.7550919026328863 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.02it/s]
Loss: 0.4916617099035491 AUROC: 0.8178690529189 AUPRC: 0.6296368838139891 Sensitivity: 0.7567049808429118 Specificity: 0.7390210430009149 Threshold: 0.15 Accuracy: 0.7436847423374874 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.88it/s]
Loss: 0.5215200715594821 AUROC: 0.8221731980647358 AUPRC: 0.6354695190714938 Sensitivity: 0.7495769881556683 Specificity: 0.7468354430379747 Threshold: 0.16 Accuracy: 0.7476403378042722 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.94it/s]
Loss: 0.4918729094488005 AUROC: 0.8183035051804178 AUPRC: 0.6313808210124947 Sensitivity: 0.7509578544061303 Specificity: 0.7438243366880146 Threshold: 0.15 Accuracy: 0.7457056247894914 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.85it/s]
Loss: 0.5494039512815929 AUROC: 0.8195446940868776 AUPRC: 0.6293862557109413 Sensitivity: 0.7377326565143824 Specificity: 0.7580872011251758 Threshold: 0.14 Accuracy: 0.7521112767014406 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:21<00:00, 8.82it/s]
Loss: 0.5163316911146525 AUROC: 0.8149302013626714 AUPRC: 0.6237055527772545 Sensitivity: 0.7426564495530013 Specificity: 0.7495425434583715 Threshold: 0.13 Accuracy: 0.7477265072414955 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.86it/s]
Loss: 0.49020790959161425 AUROC: 0.8202741069155 AUPRC: 0.6261429565331393 Sensitivity: 0.7428087986463621 Specificity: 0.7531645569620253 Threshold: 0.21 Accuracy: 0.7501241927471436 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.99it/s]
Loss: 0.46397736580461585 AUROC: 0.8160268117440721 AUPRC: 0.624717379357845 Sensitivity: 0.7388250319284803 Specificity: 0.7520585544373285 Threshold: 0.2 Accuracy: 0.7485685415964971 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.85it/s]
Loss: 0.5113674468464322 AUROC: 0.8103229168897742 AUPRC: 0.6138183739485745 Sensitivity: 0.7377326565143824 Specificity: 0.7376933895921237 Threshold: 0.19 Accuracy: 0.7377049180327869 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.05it/s]
Loss: 0.48033287011647735 AUROC: 0.8085948226202035 AUPRC: 0.6120864274290376 Sensitivity: 0.7401021711366539 Specificity: 0.7397072278133577 Threshold: 0.18 Accuracy: 0.7398113843044796 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.91it/s]
Loss: 0.577661522324123 AUROC: 0.8241555826854292 AUPRC: 0.6354615459412466 Sensitivity: 0.7614213197969543 Specificity: 0.7461322081575246 Threshold: 0.1 Accuracy: 0.7506209637357178 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.95it/s]
Loss: 0.5444240323117664 AUROC: 0.8187398562079131 AUPRC: 0.6336783683239768 Sensitivity: 0.7401021711366539 Specificity: 0.7534309240622141 Threshold: 0.1 Accuracy: 0.7499157965644998 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.86it/s]
Loss: 0.6162330654878465 AUROC: 0.8187879134033474 AUPRC: 0.6287684492356941 Sensitivity: 0.7326565143824028 Specificity: 0.7587904360056259 Threshold: 0.09 Accuracy: 0.7511177347242921 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 9.03it/s]
Loss: 0.576936356242626 AUROC: 0.8150568344474708 AUPRC: 0.6272402141051772 Sensitivity: 0.7420178799489144 Specificity: 0.7442817932296432 Threshold: 0.08 Accuracy: 0.7436847423374874 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.89it/s]
Loss: 0.5453022224089455 AUROC: 0.8148743101515703 AUPRC: 0.6235673862530877 Sensitivity: 0.7343485617597293 Specificity: 0.7482419127988749 Threshold: 0.14 Accuracy: 0.7441629408842524 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.98it/s]
Loss: 0.5114067932290416 AUROC: 0.8123960060480079 AUPRC: 0.6240723874195694 Sensitivity: 0.7413793103448276 Specificity: 0.7442817932296432 Threshold: 0.13 Accuracy: 0.743516335466487 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:08<00:00, 7.54it/s]
Loss: 0.49166179081750294 AUROC: 0.8119126322878814 AUPRC: 0.6106345076048291 Sensitivity: 0.7461928934010152 Specificity: 0.7468354430379747 Threshold: 0.22 Accuracy: 0.7466467958271237 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.97it/s]
Loss: 0.4660358131732992 AUROC: 0.8071229868698871 AUPRC: 0.6091726836339224 Sensitivity: 0.7330779054916986 Specificity: 0.7438243366880146 Threshold: 0.21 Accuracy: 0.740990232401482 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.79it/s]
Loss: 0.5221308337317573 AUROC: 0.8065580519798858 AUPRC: 0.6057800910376284 Sensitivity: 0.7360406091370558 Specificity: 0.740506329113924 Threshold: 0.17 Accuracy: 0.7391952309985097 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.87it/s]
Loss: 0.4899766756001339 AUROC: 0.8041690182153003 AUPRC: 0.6073871675768734 Sensitivity: 0.731162196679438 Specificity: 0.7381061299176578 Threshold: 0.16 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.79it/s]
Loss: 0.49897735175632296 AUROC: 0.8173826335491825 AUPRC: 0.6255182659843671 Sensitivity: 0.739424703891709 Specificity: 0.7545710267229254 Threshold: 0.19 Accuracy: 0.7501241927471436 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.97it/s]
Loss: 0.4706919061480671 AUROC: 0.8141297984737426 AUPRC: 0.6286381962077786 Sensitivity: 0.7452107279693486 Specificity: 0.7367337602927722 Threshold: 0.17 Accuracy: 0.7389693499494779 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.81it/s]
Loss: 0.5817078891254607 AUROC: 0.8009048050813778 AUPRC: 0.6022347851213813 Sensitivity: 0.7343485617597293 Specificity: 0.7440225035161744 Threshold: 0.12 Accuracy: 0.7411823149528067 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.92it/s]
Loss: 0.5383136187109255 AUROC: 0.8016023978200999 AUPRC: 0.6052855926644853 Sensitivity: 0.7330779054916986 Specificity: 0.7262122598353157 Threshold: 0.11 Accuracy: 0.7280229033344561 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.83it/s]
Loss: 0.5286484899975005 AUROC: 0.7980418894767027 AUPRC: 0.5899522184666681 Sensitivity: 0.7529610829103215 Specificity: 0.729957805907173 Threshold: 0.17 Accuracy: 0.7367113760556383 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.96it/s]
Loss: 0.4941028497952928 AUROC: 0.7970506906250037 AUPRC: 0.5942276876919408 Sensitivity: 0.7369093231162197 Specificity: 0.72483989021043 Threshold: 0.16 Accuracy: 0.7280229033344561 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.81it/s]
Loss: 0.5635850334924365 AUROC: 0.7984952439427799 AUPRC: 0.5945016667694436 Sensitivity: 0.7377326565143824 Specificity: 0.7285513361462729 Threshold: 0.13 Accuracy: 0.7312468951813215 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.87it/s]
Loss: 0.523815357236452 AUROC: 0.7980856641416001 AUPRC: 0.5989020997472384 Sensitivity: 0.7215836526181354 Specificity: 0.7387923147301007 Threshold: 0.13 Accuracy: 0.7342539575614685 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.76it/s]
Loss: 0.5761999237158942 AUROC: 0.8049528677942223 AUPRC: 0.6095628098805594 Sensitivity: 0.7445008460236887 Specificity: 0.7376933895921237 Threshold: 0.11 Accuracy: 0.739692001987084 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.95it/s]
Loss: 0.5350185002610889 AUROC: 0.8064422792669946 AUPRC: 0.6136434840709798 Sensitivity: 0.7266922094508301 Specificity: 0.7401646843549863 Threshold: 0.11 Accuracy: 0.7366116537554732 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.77it/s]
Loss: 0.5876709617792614 AUROC: 0.8037010859088864 AUPRC: 0.6081225427582024 Sensitivity: 0.7309644670050761 Specificity: 0.7461322081575246 Threshold: 0.11 Accuracy: 0.741679085941381 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.90it/s]
Loss: 0.5443004373541122 AUROC: 0.8057492296852489 AUPRC: 0.6129977088174636 Sensitivity: 0.7375478927203065 Specificity: 0.729871912168344 Threshold: 0.1 Accuracy: 0.7318962613674638 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.81it/s]
Loss: 0.5920771015068841 AUROC: 0.8025706745105319 AUPRC: 0.6017200637909081 Sensitivity: 0.754653130287648 Specificity: 0.7334739803094233 Threshold: 0.1 Accuracy: 0.739692001987084 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.94it/s]
Loss: 0.5513290371946109 AUROC: 0.8023375854006514 AUPRC: 0.6045312785990169 Sensitivity: 0.7273307790549169 Specificity: 0.7376486733760292 Threshold: 0.1 Accuracy: 0.7349275850454698 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:07<00:00, 8.83it/s]
Loss: 0.5475775306186978 AUROC: 0.8059607187988604 AUPRC: 0.6073842329176282 Sensitivity: 0.7428087986463621 Specificity: 0.7341772151898734 Threshold: 0.13 Accuracy: 0.7367113760556383 AUROC/AUPRC on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.91it/s]
Loss: 0.5121046447305269 AUROC: 0.8048870438725947 AUPRC: 0.6113923736527123 Sensitivity: 0.7298850574712644 Specificity: 0.7403934126258005 Threshold: 0.13 Accuracy: 0.7376220949814752 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 18, 0.4749 Epoch with best model Test AUROC: 3, 0.8373 Epoch with best model Test Accuracy: 4, 0.7689
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 18, 0.4749
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0018.model
Generate Stats Based on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.96it/s]
Loss: 0.4538284193283768 AUROC: 0.8226143612142287 AUPRC: 0.6418237493211623 Sensitivity: 0.7432950191570882 Specificity: 0.7564043915827996 Threshold: 0.23 Accuracy: 0.7529471202425059
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.8226143612142287
best_model_val_test_auprc: 0.6418237493211623
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 3, 0.8373
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_32_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_177b3b04_0003.model
Generate Stats Based on Test Data
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 186/186 [00:20<00:00, 8.96it/s]
Loss: 0.5879656359833735 AUROC: 0.8372709357936666 AUPRC: 0.6862217604280579 Sensitivity: 0.7650063856960408 Specificity: 0.7548032936870998 Threshold: 0.08 Accuracy: 0.757494105759515
best_model_auroc_test_auroc: 0.8372709357936666
best_model_auroc_test_auprc: 0.6862217604280579 Total Processing Time: 3424.1770 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 08:03:39.253666] Completed epoch 0 with training loss 0.47094294, validation loss 0.61253893 Validation loss improved to 0.61253893. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 08:04:33.695112] Completed epoch 1 with training loss 0.43697029, validation loss 0.58059061 Validation loss improved to 0.58059061. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 08:05:27.852383] Completed epoch 2 with training loss 0.43396991, validation loss 0.62242520 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 08:06:22.235634] Completed epoch 3 with training loss 0.43049958, validation loss 0.55502057 Validation loss improved to 0.55502057. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 08:07:16.636722] Completed epoch 4 with training loss 0.42712519, validation loss 0.68252599 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
[2024-05-03 08:08:10.909614] Completed epoch 5 with training loss 0.42499369, validation loss 0.62186766 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 08:09:05.229135] Completed epoch 6 with training loss 0.42439047, validation loss 0.48520726 Validation loss improved to 0.48520726. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 08:09:59.577435] Completed epoch 7 with training loss 0.42120793, validation loss 0.56098127 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 08:10:53.953775] Completed epoch 8 with training loss 0.42085880, validation loss 0.62926602 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 08:11:48.222050] Completed epoch 9 with training loss 0.41855049, validation loss 0.51958227 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 08:12:42.605508] Completed epoch 10 with training loss 0.41983190, validation loss 0.51372123 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 08:13:36.755973] Completed epoch 11 with training loss 0.41402721, validation loss 0.51455575 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 08:14:31.004971] Completed epoch 12 with training loss 0.41331598, validation loss 0.53737944 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.77it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 08:15:26.471856] Completed epoch 13 with training loss 0.41377324, validation loss 0.49935731 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 08:16:20.743524] Completed epoch 14 with training loss 0.40912944, validation loss 0.53403550 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 08:17:15.022461] Completed epoch 15 with training loss 0.41121766, validation loss 0.50837457 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
[2024-05-03 08:18:09.479351] Completed epoch 16 with training loss 0.41100967, validation loss 0.50587934 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 08:19:03.821074] Completed epoch 17 with training loss 0.40674803, validation loss 0.55522180 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 08:19:58.046394] Completed epoch 18 with training loss 0.40578261, validation loss 0.52220219 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.80it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 08:20:53.054552] Completed epoch 19 with training loss 0.40432549, validation loss 0.51247686 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 08:21:47.238521] Completed epoch 20 with training loss 0.40136328, validation loss 0.58299303 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 08:22:41.521487] Completed epoch 21 with training loss 0.40173084, validation loss 0.51988268 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 08:23:35.838579] Completed epoch 22 with training loss 0.40065974, validation loss 0.53047198 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 08:24:30.247875] Completed epoch 23 with training loss 0.39947602, validation loss 0.52576113 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
[2024-05-03 08:25:24.405097] Completed epoch 24 with training loss 0.39551660, validation loss 0.48209840 Validation loss improved to 0.48209840. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 08:26:18.929267] Completed epoch 25 with training loss 0.39797062, validation loss 0.52394688 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
[2024-05-03 08:27:13.187641] Completed epoch 26 with training loss 0.39693525, validation loss 0.54847449 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
[2024-05-03 08:28:06.485142] Completed epoch 27 with training loss 0.39298823, validation loss 0.59521955 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
[2024-05-03 08:28:59.988620] Completed epoch 28 with training loss 0.39348006, validation loss 0.55170155 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
[2024-05-03 08:29:53.525913] Completed epoch 29 with training loss 0.39465314, validation loss 0.49684691 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.93it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
[2024-05-03 08:30:46.875083] Completed epoch 30 with training loss 0.39146405, validation loss 0.51178503 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 08:31:41.156226] Completed epoch 31 with training loss 0.38891706, validation loss 0.55730402 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.89it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
[2024-05-03 08:32:35.022477] Completed epoch 32 with training loss 0.38970280, validation loss 0.57711363 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 08:33:28.706137] Completed epoch 33 with training loss 0.38747329, validation loss 0.54083574 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.89it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 08:34:22.528146] Completed epoch 34 with training loss 0.38737273, validation loss 0.53990364 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 08:35:16.302213] Completed epoch 35 with training loss 0.38255551, validation loss 0.57055330 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
[2024-05-03 08:36:10.152355] Completed epoch 36 with training loss 0.38315257, validation loss 0.53970414 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 08:37:03.801972] Completed epoch 37 with training loss 0.38244173, validation loss 0.55708456 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 08:37:57.538943] Completed epoch 38 with training loss 0.38026860, validation loss 0.54562074 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.89it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
[2024-05-03 08:38:51.437925] Completed epoch 39 with training loss 0.37661877, validation loss 0.55871511 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 08:39:45.096314] Completed epoch 40 with training loss 0.37816218, validation loss 0.52348590 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 08:40:38.818458] Completed epoch 41 with training loss 0.37664235, validation loss 0.61811584 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
[2024-05-03 08:41:32.484977] Completed epoch 42 with training loss 0.37665844, validation loss 0.54184830 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 08:42:26.110505] Completed epoch 43 with training loss 0.37444049, validation loss 0.56033969 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.88it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.94it/s]
[2024-05-03 08:43:19.992962] Completed epoch 44 with training loss 0.37356988, validation loss 0.52771819 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 24, 0.4821
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 5.58it/s]
Loss: 0.6103850482031703 AUROC: 0.8434939469444385 AUPRC: 0.6958527836006979 Sensitivity: 0.751269035532995 Specificity: 0.7735583684950773 Threshold: 0.12 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.5700992103866351 AUROC: 0.8320551717127103 AUPRC: 0.67628575644109 Sensitivity: 0.7752234993614304 Specificity: 0.7360475754803294 Threshold: 0.11 Accuracy: 0.7463792522734928 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.581092425622046 AUROC: 0.8443352110061613 AUPRC: 0.7018164627859347 Sensitivity: 0.766497461928934 Specificity: 0.7658227848101266 Threshold: 0.12 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.5466238277894194 AUROC: 0.8349513740639085 AUPRC: 0.683267535230277 Sensitivity: 0.7420178799489144 Specificity: 0.7781335773101555 Threshold: 0.12 Accuracy: 0.7686089592455372 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.619416537694633 AUROC: 0.8439365922498995 AUPRC: 0.7039521597973132 Sensitivity: 0.7614213197969543 Specificity: 0.7693389592123769 Threshold: 0.09 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.71it/s]
Loss: 0.5850236885329728 AUROC: 0.8356724669585508 AUPRC: 0.6857802475311823 Sensitivity: 0.7413793103448276 Specificity: 0.7781335773101555 Threshold: 0.09 Accuracy: 0.7684405523745369 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
Loss: 0.5596849955618382 AUROC: 0.8445279758972492 AUPRC: 0.7035393139444178 Sensitivity: 0.7580372250423012 Specificity: 0.7714486638537271 Threshold: 0.13 Accuracy: 0.767511177347243 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.5265637520820864 AUROC: 0.8364369393528306 AUPRC: 0.6859489978279416 Sensitivity: 0.7669220945083014 Specificity: 0.7529734675205856 Threshold: 0.12 Accuracy: 0.7566520714045133 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 0.6884623467922211 AUROC: 0.8446362574101441 AUPRC: 0.7053640738182402 Sensitivity: 0.7597292724196277 Specificity: 0.770042194092827 Threshold: 0.06 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.6472530698263517 AUROC: 0.8365383042442385 AUPRC: 0.6866887677901886 Sensitivity: 0.7426564495530013 Specificity: 0.7779048490393413 Threshold: 0.06 Accuracy: 0.7686089592455372 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.6149609759449959 AUROC: 0.8441876625710079 AUPRC: 0.7030952523102496 Sensitivity: 0.7715736040609137 Specificity: 0.7538677918424754 Threshold: 0.08 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.5855953879253839 AUROC: 0.8359764155738538 AUPRC: 0.6844343322604309 Sensitivity: 0.7573435504469987 Specificity: 0.7616651418115279 Threshold: 0.08 Accuracy: 0.7605254294375211 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 0.49165009520947933 AUROC: 0.8416638703858392 AUPRC: 0.6960534314608142 Sensitivity: 0.7749576988155669 Specificity: 0.7559774964838256 Threshold: 0.22 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.4658416974288161 AUROC: 0.8334623033608742 AUPRC: 0.6778461106769887 Sensitivity: 0.7650063856960408 Specificity: 0.7488563586459286 Threshold: 0.21 Accuracy: 0.7531155271135063 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 0.5581887187436223 AUROC: 0.8440889003119936 AUPRC: 0.6970991150129057 Sensitivity: 0.7732656514382402 Specificity: 0.7566807313642757 Threshold: 0.12 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.5313699328771202 AUROC: 0.836056163744904 AUPRC: 0.6819117416004172 Sensitivity: 0.7528735632183908 Specificity: 0.7715004574565416 Threshold: 0.12 Accuracy: 0.7665880767935331 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.6249304385855794 AUROC: 0.8430167943436594 AUPRC: 0.6978085996077523 Sensitivity: 0.7461928934010152 Specificity: 0.7763713080168776 Threshold: 0.09 Accuracy: 0.767511177347243 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5919084239711043 AUROC: 0.8357555744847918 AUPRC: 0.6812435860762255 Sensitivity: 0.7624521072796935 Specificity: 0.7580054894784996 Threshold: 0.08 Accuracy: 0.7591781744695184 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.5194228002801538 AUROC: 0.841444927546579 AUPRC: 0.6890211667229409 Sensitivity: 0.7698815566835872 Specificity: 0.7552742616033755 Threshold: 0.17 Accuracy: 0.7595628415300546 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.4920964971665413 AUROC: 0.8337236027711468 AUPRC: 0.6714451906080384 Sensitivity: 0.7713920817369093 Specificity: 0.7493138151875571 Threshold: 0.16 Accuracy: 0.7551364095655103 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.5126441307365894 AUROC: 0.8390758232369747 AUPRC: 0.6881201150375387 Sensitivity: 0.7580372250423012 Specificity: 0.7665260196905767 Threshold: 0.18 Accuracy: 0.764033780427223 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.79it/s]
Loss: 0.4883019239992224 AUROC: 0.8325487778373699 AUPRC: 0.671024357568772 Sensitivity: 0.7567049808429118 Specificity: 0.7552607502287283 Threshold: 0.17 Accuracy: 0.7556416301785113 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.517410472035408 AUROC: 0.8395375070501975 AUPRC: 0.6857073931646203 Sensitivity: 0.7732656514382402 Specificity: 0.7566807313642757 Threshold: 0.17 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.4932321423804888 AUROC: 0.8325745572369858 AUPRC: 0.6700646381273438 Sensitivity: 0.7477650063856961 Specificity: 0.7678408051235133 Threshold: 0.17 Accuracy: 0.762546311889525 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.5395029354840517 AUROC: 0.840225273143091 AUPRC: 0.6858552413346433 Sensitivity: 0.7681895093062606 Specificity: 0.760196905766526 Threshold: 0.14 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.5129867431617552 AUROC: 0.8333660505317129 AUPRC: 0.6721659725173765 Sensitivity: 0.7720306513409961 Specificity: 0.7456541628545288 Threshold: 0.13 Accuracy: 0.7526103065005052 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 0.5026612691581249 AUROC: 0.8382179004809603 AUPRC: 0.6772726110540852 Sensitivity: 0.7631133671742809 Specificity: 0.7672292545710268 Threshold: 0.2 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.47831131565955376 AUROC: 0.8314022153048717 AUPRC: 0.6651844242316229 Sensitivity: 0.7592592592592593 Specificity: 0.7552607502287283 Threshold: 0.19 Accuracy: 0.7563152576625126 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
Loss: 0.5298278918489814 AUROC: 0.839329273371553 AUPRC: 0.6764844184196327 Sensitivity: 0.7648054145516074 Specificity: 0.7651195499296765 Threshold: 0.15 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5048218571370647 AUROC: 0.8329399966581719 AUPRC: 0.6674102436213547 Sensitivity: 0.7611749680715197 Specificity: 0.7605215004574566 Threshold: 0.14 Accuracy: 0.7606938363085214 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.81it/s]
Loss: 0.508006208576262 AUROC: 0.838948503216318 AUPRC: 0.6728172603950292 Sensitivity: 0.7732656514382402 Specificity: 0.7630098452883263 Threshold: 0.17 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.48527055017409787 AUROC: 0.8319803895449855 AUPRC: 0.6634618821697573 Sensitivity: 0.7630906768837803 Specificity: 0.7536596523330283 Threshold: 0.16 Accuracy: 0.7561468507915123 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
Loss: 0.5036829328164458 AUROC: 0.8382131408540198 AUPRC: 0.6697021107182151 Sensitivity: 0.766497461928934 Specificity: 0.7693389592123769 Threshold: 0.18 Accuracy: 0.7685047193243915 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.48248774069611744 AUROC: 0.831327214048765 AUPRC: 0.6633825436619524 Sensitivity: 0.7675606641123882 Specificity: 0.75 Threshold: 0.16 Accuracy: 0.7546311889525092 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.555969518609345 AUROC: 0.8370315634660556 AUPRC: 0.6670168269582768 Sensitivity: 0.7648054145516074 Specificity: 0.7665260196905767 Threshold: 0.13 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.52690134590031 AUROC: 0.8312124117365938 AUPRC: 0.658839473815592 Sensitivity: 0.7586206896551724 Specificity: 0.755946935041171 Threshold: 0.12 Accuracy: 0.7566520714045133 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 0.5191493146121502 AUROC: 0.8355037232181742 AUPRC: 0.6595591036014967 Sensitivity: 0.7614213197969543 Specificity: 0.7637130801687764 Threshold: 0.16 Accuracy: 0.7630402384500745 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.4950404567744142 AUROC: 0.8302065039453437 AUPRC: 0.6567562418229962 Sensitivity: 0.756066411238825 Specificity: 0.7607502287282708 Threshold: 0.15 Accuracy: 0.7595149882115191 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
Loss: 0.5072570694610476 AUROC: 0.8327276708051623 AUPRC: 0.6499590320514537 Sensitivity: 0.766497461928934 Specificity: 0.7489451476793249 Threshold: 0.17 Accuracy: 0.7540983606557377 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.4848978562701133 AUROC: 0.8275457485753412 AUPRC: 0.6476882884712413 Sensitivity: 0.7477650063856961 Specificity: 0.7648673376029277 Threshold: 0.17 Accuracy: 0.7603570225665207 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.5860684402287006 AUROC: 0.8359082915081115 AUPRC: 0.6661602640466107 Sensitivity: 0.766497461928934 Specificity: 0.7566807313642757 Threshold: 0.1 Accuracy: 0.7595628415300546 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5533519265472248 AUROC: 0.830709822988272 AUPRC: 0.6598881409924533 Sensitivity: 0.7656449553001277 Specificity: 0.7438243366880146 Threshold: 0.09 Accuracy: 0.7495789828224991 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.5204073023051023 AUROC: 0.8314842182669722 AUPRC: 0.6528877616660044 Sensitivity: 0.7580372250423012 Specificity: 0.7510548523206751 Threshold: 0.15 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.4948414629825982 AUROC: 0.8269092237961531 AUPRC: 0.6484702903263092 Sensitivity: 0.7605363984674329 Specificity: 0.7442817932296432 Threshold: 0.14 Accuracy: 0.7485685415964971 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 0.5262412028387189 AUROC: 0.8321803137070116 AUPRC: 0.6524946593639758 Sensitivity: 0.7495769881556683 Specificity: 0.7545710267229254 Threshold: 0.15 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.4980291001578813 AUROC: 0.8267885791271286 AUPRC: 0.6481385197047572 Sensitivity: 0.7541507024265645 Specificity: 0.7483989021043 Threshold: 0.14 Accuracy: 0.7499157965644998 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.5284166652709246 AUROC: 0.82935309530439 AUPRC: 0.6447960769187527 Sensitivity: 0.7614213197969543 Specificity: 0.7489451476793249 Threshold: 0.15 Accuracy: 0.7526080476900149 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.49880321724440463 AUROC: 0.8244130038010373 AUPRC: 0.6422011586485983 Sensitivity: 0.7579821200510856 Specificity: 0.7415370539798719 Threshold: 0.14 Accuracy: 0.7458740316604917 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
Loss: 0.48632338363677263 AUROC: 0.8265127879276822 AUPRC: 0.6393652673059987 Sensitivity: 0.7411167512690355 Specificity: 0.760196905766526 Threshold: 0.22 Accuracy: 0.754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.46296785547528213 AUROC: 0.8214740792153481 AUPRC: 0.6353825018365354 Sensitivity: 0.7547892720306514 Specificity: 0.7429094236047575 Threshold: 0.2 Accuracy: 0.7460424385314921 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.5218140380457044 AUROC: 0.8267924160104331 AUPRC: 0.6383338129438463 Sensitivity: 0.739424703891709 Specificity: 0.7580872011251758 Threshold: 0.16 Accuracy: 0.7526080476900149 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.49521797478839913 AUROC: 0.8226007777345443 AUPRC: 0.6360087100755102 Sensitivity: 0.7420178799489144 Specificity: 0.7554894784995425 Threshold: 0.15 Accuracy: 0.7519366790165039 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.5547667117789388 AUROC: 0.8291145190040005 AUPRC: 0.6437967179542794 Sensitivity: 0.7614213197969543 Specificity: 0.7489451476793249 Threshold: 0.12 Accuracy: 0.7526080476900149 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.5209116527149754 AUROC: 0.8242536535178584 AUPRC: 0.6412873332067033 Sensitivity: 0.7458492975734355 Specificity: 0.7589204025617566 Threshold: 0.12 Accuracy: 0.755473223307511 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 0.5910894796252251 AUROC: 0.8279680438647218 AUPRC: 0.6401939644566856 Sensitivity: 0.751269035532995 Specificity: 0.7559774964838256 Threshold: 0.1 Accuracy: 0.754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.5591990649700165 AUROC: 0.8224639205252514 AUPRC: 0.6373088786725897 Sensitivity: 0.756066411238825 Specificity: 0.7419945105215004 Threshold: 0.09 Accuracy: 0.7457056247894914 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 0.5539526278153062 AUROC: 0.8253133619386912 AUPRC: 0.6378671315880979 Sensitivity: 0.7631133671742809 Specificity: 0.7426160337552743 Threshold: 0.12 Accuracy: 0.7486338797814208 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.5225586165343562 AUROC: 0.8214832809273924 AUPRC: 0.638474022973321 Sensitivity: 0.7432950191570882 Specificity: 0.7554894784995425 Threshold: 0.12 Accuracy: 0.7522734927585045 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
Loss: 0.4969043703749776 AUROC: 0.8185285137350935 AUPRC: 0.6191079696339662 Sensitivity: 0.7428087986463621 Specificity: 0.7559774964838256 Threshold: 0.21 Accuracy: 0.7521112767014406 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.4702286930173956 AUROC: 0.8137764819430278 AUPRC: 0.619503767879246 Sensitivity: 0.7337164750957854 Specificity: 0.7511436413540714 Threshold: 0.2 Accuracy: 0.7465476591444931 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.5124079845845699 AUROC: 0.8121220558732606 AUPRC: 0.6105430357887567 Sensitivity: 0.7326565143824028 Specificity: 0.749648382559775 Threshold: 0.19 Accuracy: 0.7446597118728266 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.48302504820849307 AUROC: 0.8099545581483936 AUPRC: 0.6125745879189325 Sensitivity: 0.7273307790549169 Specificity: 0.7472552607502287 Threshold: 0.18 Accuracy: 0.742000673627484 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 0.5526748988777399 AUROC: 0.8220684862720461 AUPRC: 0.6318345199125622 Sensitivity: 0.7461928934010152 Specificity: 0.7587904360056259 Threshold: 0.13 Accuracy: 0.7550919026328863 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.84it/s]
Loss: 0.5186462527321231 AUROC: 0.8187129813663869 AUPRC: 0.6325214843525542 Sensitivity: 0.7426564495530013 Specificity: 0.7518298261665142 Threshold: 0.12 Accuracy: 0.7494105759514988 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.87it/s]
Loss: 0.5837114481255412 AUROC: 0.8140830221727222 AUPRC: 0.6166802699358889 Sensitivity: 0.7563451776649747 Specificity: 0.7355836849507735 Threshold: 0.11 Accuracy: 0.741679085941381 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5424115560067597 AUROC: 0.8119941249259481 AUPRC: 0.6174141266578104 Sensitivity: 0.7337164750957854 Specificity: 0.7463403476669717 Threshold: 0.11 Accuracy: 0.743011114853486 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
Loss: 0.5351852290332317 AUROC: 0.8100183007655859 AUPRC: 0.6061639639154812 Sensitivity: 0.7461928934010152 Specificity: 0.7327707454289732 Threshold: 0.15 Accuracy: 0.7367113760556383 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5032154180670297 AUROC: 0.8073349183647478 AUPRC: 0.6061612424721754 Sensitivity: 0.7477650063856961 Specificity: 0.7278133577310155 Threshold: 0.14 Accuracy: 0.7330751094644662 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 0.5453459266573191 AUROC: 0.812589689220159 AUPRC: 0.6093606065528525 Sensitivity: 0.751269035532995 Specificity: 0.7320675105485233 Threshold: 0.14 Accuracy: 0.7377049180327869 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.5101132463383419 AUROC: 0.8089073156824048 AUPRC: 0.6108761533049947 Sensitivity: 0.7273307790549169 Specificity: 0.7442817932296432 Threshold: 0.14 Accuracy: 0.7398113843044796 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
Loss: 0.5725211035460234 AUROC: 0.8114200108995457 AUPRC: 0.6137673631091198 Sensitivity: 0.7360406091370558 Specificity: 0.7383966244725738 Threshold: 0.12 Accuracy: 0.7377049180327869 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5318662955235409 AUROC: 0.8095866357255448 AUPRC: 0.6146449463527796 Sensitivity: 0.7490421455938697 Specificity: 0.7275846294602013 Threshold: 0.11 Accuracy: 0.7332435163354665 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 0.5415012752637267 AUROC: 0.815313385736826 AUPRC: 0.6206647824156465 Sensitivity: 0.7326565143824028 Specificity: 0.750351617440225 Threshold: 0.14 Accuracy: 0.7451564828614009 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.5110372876928698 AUROC: 0.8128413396991653 AUPRC: 0.6205741534754864 Sensitivity: 0.735632183908046 Specificity: 0.7470265324794144 Threshold: 0.13 Accuracy: 0.7440215560794881 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.560489664785564 AUROC: 0.8124421407850053 AUPRC: 0.6142144179239033 Sensitivity: 0.7343485617597293 Specificity: 0.7461322081575246 Threshold: 0.13 Accuracy: 0.7426726279185295 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.80it/s]
Loss: 0.522264693052538 AUROC: 0.8096249031629351 AUPRC: 0.6144486736763491 Sensitivity: 0.7394636015325671 Specificity: 0.7419945105215004 Threshold: 0.12 Accuracy: 0.7413270461434827 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.5422693705186248 AUROC: 0.812578980059543 AUPRC: 0.6156185508899142 Sensitivity: 0.7309644670050761 Specificity: 0.7440225035161744 Threshold: 0.14 Accuracy: 0.7401887729756582 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5093079923942525 AUROC: 0.8092946639417914 AUPRC: 0.6162299328227291 Sensitivity: 0.7388250319284803 Specificity: 0.7429094236047575 Threshold: 0.13 Accuracy: 0.7418322667564836 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0039.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.86it/s]
Loss: 0.5647511156275868 AUROC: 0.8077812761035791 AUPRC: 0.6100033350514789 Sensitivity: 0.7428087986463621 Specificity: 0.729957805907173 Threshold: 0.12 Accuracy: 0.7337307501241928 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.5271725712283966 AUROC: 0.8058021030147731 AUPRC: 0.6113181186342782 Sensitivity: 0.7260536398467433 Specificity: 0.7442817932296432 Threshold: 0.12 Accuracy: 0.7394745705624789 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0040.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.5209347233176231 AUROC: 0.8080275867977469 AUPRC: 0.60908798595238 Sensitivity: 0.7309644670050761 Specificity: 0.7383966244725738 Threshold: 0.17 Accuracy: 0.736214605067064 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.4885669938659155 AUROC: 0.8050947396587361 AUPRC: 0.6099408541307183 Sensitivity: 0.7305236270753512 Specificity: 0.7378774016468436 Threshold: 0.16 Accuracy: 0.7359380262714719 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0041.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.6112844301387668 AUROC: 0.8097351029626298 AUPRC: 0.6139499587165843 Sensitivity: 0.7326565143824028 Specificity: 0.7475386779184248 Threshold: 0.09 Accuracy: 0.7431693989071039 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.5776096561583139 AUROC: 0.8057949461276276 AUPRC: 0.6116226531207264 Sensitivity: 0.731162196679438 Specificity: 0.734903934126258 Threshold: 0.08 Accuracy: 0.7339171438194678 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0042.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
Loss: 0.5484297377988696 AUROC: 0.7982132360465588 AUPRC: 0.595434161971674 Sensitivity: 0.7225042301184433 Specificity: 0.7306610407876231 Threshold: 0.15 Accuracy: 0.7282662692498758 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.5094563717483193 AUROC: 0.7969782454000204 AUPRC: 0.5956008537861484 Sensitivity: 0.7292464878671775 Specificity: 0.7250686184812443 Threshold: 0.14 Accuracy: 0.7261704277534523 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0043.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.5562691017985344 AUROC: 0.8057179778248981 AUPRC: 0.6059173557229527 Sensitivity: 0.7225042301184433 Specificity: 0.7461322081575246 Threshold: 0.13 Accuracy: 0.7391952309985097 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 0.5217830513113288 AUROC: 0.8042405870867556 AUPRC: 0.6087064535525533 Sensitivity: 0.7324393358876118 Specificity: 0.7401646843549863 Threshold: 0.12 Accuracy: 0.7381273155944763 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0044.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
Loss: 0.531181407161057 AUROC: 0.7996649222633929 AUPRC: 0.6015960630870069 Sensitivity: 0.727580372250423 Specificity: 0.739803094233474 Threshold: 0.17 Accuracy: 0.736214605067064 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.4928711474903168 AUROC: 0.8015752308607311 AUPRC: 0.6061988356281757 Sensitivity: 0.7318007662835249 Specificity: 0.7301006404391582 Threshold: 0.16 Accuracy: 0.7305490063994611 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 24, 0.4821 Epoch with best model Test AUROC: 4, 0.8365 Epoch with best model Test Accuracy: 1, 0.7686
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 24, 0.4821
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0024.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 0.46296785547528213 AUROC: 0.8214740792153481 AUPRC: 0.6353825018365354 Sensitivity: 0.7547892720306514 Specificity: 0.7429094236047575 Threshold: 0.2 Accuracy: 0.7460424385314921
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.8214740792153481
best_model_val_test_auprc: 0.6353825018365354
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 4, 0.8365
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_d7cd59c3_0004.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 0.6472530698263517 AUROC: 0.8365383042442385 AUPRC: 0.6866887677901886 Sensitivity: 0.7426564495530013 Specificity: 0.7779048490393413 Threshold: 0.06 Accuracy: 0.7686089592455372
best_model_auroc_test_auroc: 0.8365383042442385
best_model_auroc_test_auprc: 0.6866887677901886 Total Processing Time: 3682.9550 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=128,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 128
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:50<00:00, 1.82it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.34it/s]
[2024-05-03 09:05:05.159323] Completed epoch 0 with training loss 0.49746197, validation loss 0.58578432 Validation loss improved to 0.58578432. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 09:05:57.538531] Completed epoch 1 with training loss 0.44051141, validation loss 0.59989780 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:06:50.145674] Completed epoch 2 with training loss 0.43296605, validation loss 0.58002710 Validation loss improved to 0.58002710. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 09:07:42.769573] Completed epoch 3 with training loss 0.42964223, validation loss 0.58797216 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:08:35.375799] Completed epoch 4 with training loss 0.42743734, validation loss 0.60506529 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:09:27.646534] Completed epoch 5 with training loss 0.42538685, validation loss 0.59065950 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 09:10:20.438036] Completed epoch 6 with training loss 0.42321947, validation loss 0.56045115 Validation loss improved to 0.56045115. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 09:11:13.296271] Completed epoch 7 with training loss 0.42232797, validation loss 0.55178010 Validation loss improved to 0.55178010. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
[2024-05-03 09:12:06.219746] Completed epoch 8 with training loss 0.42303574, validation loss 0.56764483 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 09:12:58.541975] Completed epoch 9 with training loss 0.42013094, validation loss 0.53483760 Validation loss improved to 0.53483760. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:13:50.881050] Completed epoch 10 with training loss 0.42109615, validation loss 0.53845978 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:14:43.885621] Completed epoch 11 with training loss 0.41751119, validation loss 0.53917581 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:15:36.210553] Completed epoch 12 with training loss 0.41509885, validation loss 0.53094596 Validation loss improved to 0.53094596. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 09:16:28.686327] Completed epoch 13 with training loss 0.41392931, validation loss 0.50418097 Validation loss improved to 0.50418097. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:17:21.209645] Completed epoch 14 with training loss 0.41515085, validation loss 0.50074017 Validation loss improved to 0.50074017. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 09:18:13.875893] Completed epoch 15 with training loss 0.41258559, validation loss 0.51940966 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:19:06.052208] Completed epoch 16 with training loss 0.41215131, validation loss 0.51548088 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:19:58.395275] Completed epoch 17 with training loss 0.41182467, validation loss 0.53706372 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:20:50.887583] Completed epoch 18 with training loss 0.40829501, validation loss 0.55230439 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:21:43.261359] Completed epoch 19 with training loss 0.41028571, validation loss 0.54638922 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:22:35.751105] Completed epoch 20 with training loss 0.40774247, validation loss 0.51787329 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:23:28.215790] Completed epoch 21 with training loss 0.40710983, validation loss 0.53975910 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:24:20.862476] Completed epoch 22 with training loss 0.40380740, validation loss 0.50550818 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:25:13.152578] Completed epoch 23 with training loss 0.40766570, validation loss 0.49804634 Validation loss improved to 0.49804634. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
[2024-05-03 09:26:05.926829] Completed epoch 24 with training loss 0.40351465, validation loss 0.49500769 Validation loss improved to 0.49500769. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:26:58.360507] Completed epoch 25 with training loss 0.40379757, validation loss 0.51694882 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:27:50.606949] Completed epoch 26 with training loss 0.40185589, validation loss 0.48761255 Validation loss improved to 0.48761255. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 09:28:43.198946] Completed epoch 27 with training loss 0.40258801, validation loss 0.55455995 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:29:36.308837] Completed epoch 28 with training loss 0.40171400, validation loss 0.57148874 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:48<00:00, 1.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.39it/s]
[2024-05-03 09:30:31.130299] Completed epoch 29 with training loss 0.40087527, validation loss 0.50888473 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
[2024-05-03 09:31:24.991659] Completed epoch 30 with training loss 0.39874828, validation loss 0.51111150 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
[2024-05-03 09:32:18.857688] Completed epoch 31 with training loss 0.39724296, validation loss 0.53310293 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
[2024-05-03 09:33:12.380085] Completed epoch 32 with training loss 0.39885882, validation loss 0.50728947 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.93it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.39it/s]
[2024-05-03 09:34:06.691996] Completed epoch 33 with training loss 0.39423245, validation loss 0.51528364 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.33it/s]
[2024-05-03 09:35:01.144015] Completed epoch 34 with training loss 0.39266345, validation loss 0.51009500 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
[2024-05-03 09:35:55.011612] Completed epoch 35 with training loss 0.39326456, validation loss 0.52535594 No improvement in validation loss. 9 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 09:36:47.019550] Completed epoch 36 with training loss 0.39330119, validation loss 0.47943169 Validation loss improved to 0.47943169. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
[2024-05-03 09:37:40.373098] Completed epoch 37 with training loss 0.39379451, validation loss 0.52573419 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
[2024-05-03 09:38:33.667188] Completed epoch 38 with training loss 0.39102608, validation loss 0.49182898 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
[2024-05-03 09:39:26.414756] Completed epoch 39 with training loss 0.38962567, validation loss 0.50889206 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
[2024-05-03 09:40:20.163193] Completed epoch 40 with training loss 0.38860744, validation loss 0.50839961 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:41:12.375067] Completed epoch 41 with training loss 0.38765660, validation loss 0.52389097 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 09:42:04.222286] Completed epoch 42 with training loss 0.38910168, validation loss 0.51820892 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 09:42:56.417000] Completed epoch 43 with training loss 0.38841757, validation loss 0.55578816 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:43:48.379554] Completed epoch 44 with training loss 0.38620874, validation loss 0.52311701 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:44:40.600304] Completed epoch 45 with training loss 0.38550612, validation loss 0.52732587 No improvement in validation loss. 9 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 09:45:32.820526] Completed epoch 46 with training loss 0.38063210, validation loss 0.52577800 No improvement in validation loss. 10 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
[2024-05-03 09:46:25.983937] Completed epoch 47 with training loss 0.38129035, validation loss 0.50291324 No improvement in validation loss. 11 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
[2024-05-03 09:47:19.183088] Completed epoch 48 with training loss 0.38349840, validation loss 0.52869928 No improvement in validation loss. 12 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 09:48:11.712566] Completed epoch 49 with training loss 0.37941781, validation loss 0.51841593 No improvement in validation loss. 13 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:49:04.683717] Completed epoch 50 with training loss 0.37899661, validation loss 0.52904582 No improvement in validation loss. 14 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:49:57.141711] Completed epoch 51 with training loss 0.38220513, validation loss 0.57547402 No improvement in validation loss. 15 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 09:50:49.344889] Completed epoch 52 with training loss 0.37822396, validation loss 0.49590153 No improvement in validation loss. 16 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 09:51:41.910063] Completed epoch 53 with training loss 0.37680310, validation loss 0.53850180 No improvement in validation loss. 17 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
[2024-05-03 09:52:35.296120] Completed epoch 54 with training loss 0.37610149, validation loss 0.53905106 No improvement in validation loss. 18 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 09:53:28.123399] Completed epoch 55 with training loss 0.37653333, validation loss 0.56094909 No improvement in validation loss. 19 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 09:54:21.170106] Completed epoch 56 with training loss 0.37201819, validation loss 0.54722226 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 36, 0.4794
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:05<00:00, 2.73it/s]
Loss: 0.5844884533435106 AUROC: 0.8407416926661287 AUPRC: 0.6856547445842216 Sensitivity: 0.7868020304568528 Specificity: 0.750351617440225 Threshold: 0.14 Accuracy: 0.7610531544957775 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.43it/s]
Loss: 0.547483688022228 AUROC: 0.8266106793609397 AUPRC: 0.663351615166669 Sensitivity: 0.7426564495530013 Specificity: 0.7664684354986276 Threshold: 0.14 Accuracy: 0.7601886156955204 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.6026981975883245 AUROC: 0.8427454956080542 AUPRC: 0.6956605829004787 Sensitivity: 0.7478849407783418 Specificity: 0.7805907172995781 Threshold: 0.12 Accuracy: 0.7709885742672627 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.45it/s]
Loss: 0.5617118579276065 AUROC: 0.8315241014747278 AUPRC: 0.677335739898551 Sensitivity: 0.7669220945083014 Specificity: 0.7465690759377859 Threshold: 0.11 Accuracy: 0.7519366790165039 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 0.5776664204895496 AUROC: 0.8434939469444385 AUPRC: 0.7003006950018 Sensitivity: 0.7800338409475466 Specificity: 0.760196905766526 Threshold: 0.12 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.51it/s]
Loss: 0.5424456044714502 AUROC: 0.8333420968686136 AUPRC: 0.6806398987462408 Sensitivity: 0.7490421455938697 Specificity: 0.7669258920402562 Threshold: 0.12 Accuracy: 0.7622094981475244 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 0.5845901593565941 AUROC: 0.8443958962496521 AUPRC: 0.7016798681826544 Sensitivity: 0.7766497461928934 Specificity: 0.7587904360056259 Threshold: 0.11 Accuracy: 0.764033780427223 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.50it/s]
Loss: 0.5484868240483264 AUROC: 0.8353224367535659 AUPRC: 0.683666245167719 Sensitivity: 0.7496807151979565 Specificity: 0.7669258920402562 Threshold: 0.11 Accuracy: 0.7623779050185248 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.6068877335637808 AUROC: 0.8438651978457928 AUPRC: 0.7032555734537437 Sensitivity: 0.7495769881556683 Specificity: 0.7756680731364276 Threshold: 0.1 Accuracy: 0.7680079483358172 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.42it/s]
Loss: 0.56725660188401 AUROC: 0.8352898656141076 AUPRC: 0.6844630445774087 Sensitivity: 0.7592592592592593 Specificity: 0.7568618481244281 Threshold: 0.09 Accuracy: 0.757494105759515 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
Loss: 0.5891754254698753 AUROC: 0.8446148390889121 AUPRC: 0.7028135312985284 Sensitivity: 0.7766497461928934 Specificity: 0.7552742616033755 Threshold: 0.1 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.36it/s]
Loss: 0.5520139701188879 AUROC: 0.8363903465569238 AUPRC: 0.6840826971532205 Sensitivity: 0.7535121328224776 Specificity: 0.7653247941445562 Threshold: 0.1 Accuracy: 0.7622094981475244 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.30it/s]
Loss: 0.5581125747412443 AUROC: 0.8431048474420575 AUPRC: 0.7004177608034464 Sensitivity: 0.7698815566835872 Specificity: 0.7630098452883263 Threshold: 0.12 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.528102955285539 AUROC: 0.8347155619354093 AUPRC: 0.6822764917542599 Sensitivity: 0.7509578544061303 Specificity: 0.7689844464775847 Threshold: 0.12 Accuracy: 0.7642303805995284 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:07<00:00, 2.28it/s]
Loss: 0.5526761393994093 AUROC: 0.8433892351517487 AUPRC: 0.698711435504762 Sensitivity: 0.766497461928934 Specificity: 0.7665260196905767 Threshold: 0.13 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:20<00:00, 2.31it/s]
Loss: 0.5189859324947317 AUROC: 0.8352132577098662 AUPRC: 0.6816387642990932 Sensitivity: 0.7509578544061303 Specificity: 0.7735590118938701 Threshold: 0.13 Accuracy: 0.7675985180195352 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:07<00:00, 2.22it/s]
Loss: 0.5666617788374424 AUROC: 0.8435427331205779 AUPRC: 0.6984967016746737 Sensitivity: 0.7631133671742809 Specificity: 0.7665260196905767 Threshold: 0.12 Accuracy: 0.7655240933929458 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.38it/s]
Loss: 0.5324779095801901 AUROC: 0.8359607872692707 AUPRC: 0.6816941828864906 Sensitivity: 0.7477650063856961 Specificity: 0.776075022872827 Threshold: 0.12 Accuracy: 0.7686089592455372 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
Loss: 0.5332057531923056 AUROC: 0.843001325556103 AUPRC: 0.6953043422117704 Sensitivity: 0.7563451776649747 Specificity: 0.770745428973277 Threshold: 0.15 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.40it/s]
Loss: 0.5050767187742476 AUROC: 0.8348860857260706 AUPRC: 0.6776452524266217 Sensitivity: 0.7611749680715197 Specificity: 0.7589204025617566 Threshold: 0.14 Accuracy: 0.7595149882115191 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.5409606453031301 AUROC: 0.8422445448725729 AUPRC: 0.6959128540895225 Sensitivity: 0.7648054145516074 Specificity: 0.760196905766526 Threshold: 0.14 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.46it/s]
Loss: 0.5100886301791414 AUROC: 0.8345789238144982 AUPRC: 0.6783636649181465 Sensitivity: 0.7528735632183908 Specificity: 0.7680695333943275 Threshold: 0.14 Accuracy: 0.7640619737285281 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.5413438528776169 AUROC: 0.8426895699915041 AUPRC: 0.6943817980524689 Sensitivity: 0.7631133671742809 Specificity: 0.7637130801687764 Threshold: 0.14 Accuracy: 0.7635370094386488 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.39it/s]
Loss: 0.5113376515342835 AUROC: 0.8348312406011084 AUPRC: 0.6772470874861094 Sensitivity: 0.7694763729246488 Specificity: 0.7506861848124429 Threshold: 0.13 Accuracy: 0.7556416301785113 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
Loss: 0.5345283765345812 AUROC: 0.8426955195251797 AUPRC: 0.6921867418687404 Sensitivity: 0.7563451776649747 Specificity: 0.7679324894514767 Threshold: 0.15 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.504353052758156 AUROC: 0.8347232300287794 AUPRC: 0.674608637726655 Sensitivity: 0.7637292464878672 Specificity: 0.7580054894784996 Threshold: 0.14 Accuracy: 0.7595149882115191 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.39it/s]
Loss: 0.5074349083006382 AUROC: 0.8417757216189395 AUPRC: 0.6887937561957163 Sensitivity: 0.7749576988155669 Specificity: 0.7545710267229254 Threshold: 0.18 Accuracy: 0.7605563835072032 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.46it/s]
Loss: 0.4811107766755084 AUROC: 0.8337288608923148 AUPRC: 0.6715533750539376 Sensitivity: 0.7515964240102171 Specificity: 0.7694419030192132 Threshold: 0.18 Accuracy: 0.7647356012125295 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.33it/s]
Loss: 0.5026642382144928 AUROC: 0.841684098800336 AUPRC: 0.685281683126999 Sensitivity: 0.7681895093062606 Specificity: 0.7609001406469761 Threshold: 0.19 Accuracy: 0.7630402384500745 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.41it/s]
Loss: 0.47590622718029835 AUROC: 0.8333894199591269 AUPRC: 0.668399177883002 Sensitivity: 0.7656449553001277 Specificity: 0.7511436413540714 Threshold: 0.18 Accuracy: 0.7549680026945099 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.5247977320104837 AUROC: 0.8420125130592264 AUPRC: 0.6867119978421803 Sensitivity: 0.751269035532995 Specificity: 0.7756680731364276 Threshold: 0.16 Accuracy: 0.7685047193243915 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:20<00:00, 2.27it/s]
Loss: 0.49624123345030113 AUROC: 0.8338866775568197 AUPRC: 0.6703117790001478 Sensitivity: 0.7567049808429118 Specificity: 0.762580054894785 Threshold: 0.15 Accuracy: 0.7610306500505221 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:07<00:00, 2.19it/s]
Loss: 0.5146767664700747 AUROC: 0.8417566831111778 AUPRC: 0.6853648376021312 Sensitivity: 0.7648054145516074 Specificity: 0.7651195499296765 Threshold: 0.17 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.40it/s]
Loss: 0.4886229675500951 AUROC: 0.8337545672624702 AUPRC: 0.6681605931874409 Sensitivity: 0.7675606641123882 Specificity: 0.7541171088746569 Threshold: 0.16 Accuracy: 0.7576625126305153 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.41it/s]
Loss: 0.5374794639647007 AUROC: 0.8419649167898221 AUPRC: 0.6848344754276532 Sensitivity: 0.7732656514382402 Specificity: 0.7573839662447257 Threshold: 0.14 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.5088038384280307 AUROC: 0.8343203995237312 AUPRC: 0.6686881491540428 Sensitivity: 0.7496807151979565 Specificity: 0.7698993595608418 Threshold: 0.14 Accuracy: 0.7645671943415291 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
Loss: 0.5511354394257069 AUROC: 0.8415484494325336 AUPRC: 0.6844091041128664 Sensitivity: 0.7648054145516074 Specificity: 0.7644163150492265 Threshold: 0.13 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.43it/s]
Loss: 0.520881693730963 AUROC: 0.8341321295741272 AUPRC: 0.6682740807144795 Sensitivity: 0.768837803320562 Specificity: 0.7502287282708143 Threshold: 0.12 Accuracy: 0.7551364095655103 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
Loss: 0.548192435875535 AUROC: 0.8410641573913438 AUPRC: 0.6787873321191162 Sensitivity: 0.7614213197969543 Specificity: 0.7679324894514767 Threshold: 0.14 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.45it/s]
Loss: 0.5164314771586276 AUROC: 0.8337796893969402 AUPRC: 0.6636893116190863 Sensitivity: 0.7624521072796935 Specificity: 0.757548032936871 Threshold: 0.13 Accuracy: 0.7588413607275177 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.31it/s]
Loss: 0.5185114908963442 AUROC: 0.8398397433609154 AUPRC: 0.6787328961696993 Sensitivity: 0.7715736040609137 Specificity: 0.7573839662447257 Threshold: 0.16 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.38it/s]
Loss: 0.491044098392446 AUROC: 0.8328147511331252 AUPRC: 0.6646488991651832 Sensitivity: 0.7496807151979565 Specificity: 0.7708142726440989 Threshold: 0.16 Accuracy: 0.7652408218255304 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.30it/s]
Loss: 0.5396554414182901 AUROC: 0.8398480727080612 AUPRC: 0.6782158768271994 Sensitivity: 0.7631133671742809 Specificity: 0.7630098452883263 Threshold: 0.14 Accuracy: 0.7630402384500745 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.36it/s]
Loss: 0.50911290594872 AUROC: 0.8335842625601908 AUPRC: 0.6652468663502525 Sensitivity: 0.7656449553001277 Specificity: 0.7591491308325709 Threshold: 0.13 Accuracy: 0.7608622431795218 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.34it/s]
Loss: 0.5046041551977396 AUROC: 0.8391841047498697 AUPRC: 0.6728690271189098 Sensitivity: 0.754653130287648 Specificity: 0.770745428973277 Threshold: 0.18 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.39it/s]
Loss: 0.4785928399638927 AUROC: 0.831852441929894 AUPRC: 0.6601556901304185 Sensitivity: 0.7567049808429118 Specificity: 0.7648673376029277 Threshold: 0.17 Accuracy: 0.7627147187605254 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.34it/s]
Loss: 0.4982922989875078 AUROC: 0.8366805409791981 AUPRC: 0.6641694806495194 Sensitivity: 0.754653130287648 Specificity: 0.770745428973277 Threshold: 0.2 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.45it/s]
Loss: 0.471764825443004 AUROC: 0.8299766072031586 AUPRC: 0.6536798383205785 Sensitivity: 0.7503192848020435 Specificity: 0.7614364135407137 Threshold: 0.19 Accuracy: 0.7585045469855171 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
Loss: 0.49768189154565334 AUROC: 0.8374194730617014 AUPRC: 0.6693562318850973 Sensitivity: 0.7631133671742809 Specificity: 0.7651195499296765 Threshold: 0.19 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.46it/s]
Loss: 0.4699876007247478 AUROC: 0.8311687401191141 AUPRC: 0.6589105904085764 Sensitivity: 0.7573435504469987 Specificity: 0.7580054894784996 Threshold: 0.18 Accuracy: 0.7578309195015157 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.41it/s]
Loss: 0.5155682563781738 AUROC: 0.8365341824507795 AUPRC: 0.663051030670492 Sensitivity: 0.7698815566835872 Specificity: 0.7538677918424754 Threshold: 0.16 Accuracy: 0.7585692995529061 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.4873786879346726 AUROC: 0.8310914749497265 AUPRC: 0.6556620964273215 Sensitivity: 0.768837803320562 Specificity: 0.7493138151875571 Threshold: 0.15 Accuracy: 0.754462782081509 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.4863808937370777 AUROC: 0.8332774077167832 AUPRC: 0.6548194501998199 Sensitivity: 0.7614213197969543 Specificity: 0.7693389592123769 Threshold: 0.22 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.37it/s]
Loss: 0.46136824976890645 AUROC: 0.8276644944783886 AUPRC: 0.6483501562955306 Sensitivity: 0.7458492975734355 Specificity: 0.7628087831655993 Threshold: 0.21 Accuracy: 0.7583361401145167 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.34it/s]
Loss: 0.5552405379712582 AUROC: 0.8369911066370619 AUPRC: 0.6647724837331282 Sensitivity: 0.7715736040609137 Specificity: 0.759493670886076 Threshold: 0.12 Accuracy: 0.7630402384500745 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.43it/s]
Loss: 0.5244806488143637 AUROC: 0.8309924470010598 AUPRC: 0.6583508146510622 Sensitivity: 0.7694763729246488 Specificity: 0.7483989021043 Threshold: 0.11 Accuracy: 0.7539575614685079 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.5729922130703926 AUROC: 0.8362985809172276 AUPRC: 0.6655382811509045 Sensitivity: 0.7580372250423012 Specificity: 0.7616033755274262 Threshold: 0.11 Accuracy: 0.7605563835072032 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.540379173261054 AUROC: 0.8305628877134067 AUPRC: 0.6593084899369062 Sensitivity: 0.7624521072796935 Specificity: 0.755032021957914 Threshold: 0.1 Accuracy: 0.756988885146514 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
Loss: 0.5067795552313328 AUROC: 0.8314616100390051 AUPRC: 0.6503065350673922 Sensitivity: 0.7597292724196277 Specificity: 0.7644163150492265 Threshold: 0.18 Accuracy: 0.7630402384500745 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.40it/s]
Loss: 0.47921633054601387 AUROC: 0.8264923716346564 AUPRC: 0.6451208059842194 Sensitivity: 0.7541507024265645 Specificity: 0.7566331198536139 Threshold: 0.17 Accuracy: 0.7559784439205119 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.35it/s]
Loss: 0.5110019221901894 AUROC: 0.8289889838434464 AUPRC: 0.6420844753560413 Sensitivity: 0.7563451776649747 Specificity: 0.7651195499296765 Threshold: 0.18 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.48154424321144185 AUROC: 0.8246186547622804 AUPRC: 0.6381909718894105 Sensitivity: 0.7477650063856961 Specificity: 0.7577767612076852 Threshold: 0.17 Accuracy: 0.7551364095655103 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.36it/s]
Loss: 0.5309191793203354 AUROC: 0.8319982579765397 AUPRC: 0.6504454199214442 Sensitivity: 0.7495769881556683 Specificity: 0.770042194092827 Threshold: 0.15 Accuracy: 0.764033780427223 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.5014898821394494 AUROC: 0.8264733839748826 AUPRC: 0.6445340142546195 Sensitivity: 0.743933588761175 Specificity: 0.7637236962488564 Threshold: 0.14 Accuracy: 0.7585045469855171 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.5058295447379351 AUROC: 0.8282464820407377 AUPRC: 0.6443732842730723 Sensitivity: 0.7648054145516074 Specificity: 0.7552742616033755 Threshold: 0.18 Accuracy: 0.7580725285643318 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.37it/s]
Loss: 0.4770057851329763 AUROC: 0.8233725530748908 AUPRC: 0.6377695187199334 Sensitivity: 0.7522349936143039 Specificity: 0.7445105215004575 Threshold: 0.17 Accuracy: 0.7465476591444931 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.5130566693842411 AUROC: 0.8280245644346396 AUPRC: 0.6401810260255714 Sensitivity: 0.7563451776649747 Specificity: 0.7609001406469761 Threshold: 0.17 Accuracy: 0.7595628415300546 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.48455101790580346 AUROC: 0.8229488361440911 AUPRC: 0.6355311025335925 Sensitivity: 0.743933588761175 Specificity: 0.7545745654162854 Threshold: 0.16 Accuracy: 0.7517682721455036 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
Loss: 0.510272242128849 AUROC: 0.8247124590374606 AUPRC: 0.6351513287058802 Sensitivity: 0.751269035532995 Specificity: 0.759493670886076 Threshold: 0.18 Accuracy: 0.7570789865871833 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.38it/s]
Loss: 0.48032976401613114 AUROC: 0.8201585265108627 AUPRC: 0.6299689057125466 Sensitivity: 0.7413793103448276 Specificity: 0.752516010978957 Threshold: 0.17 Accuracy: 0.7495789828224991 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.36it/s]
Loss: 0.5249875709414482 AUROC: 0.8234107010692503 AUPRC: 0.6343530743931253 Sensitivity: 0.751269035532995 Specificity: 0.7538677918424754 Threshold: 0.16 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.42it/s]
Loss: 0.4921406276048498 AUROC: 0.8200730820418805 AUPRC: 0.628011933768558 Sensitivity: 0.7522349936143039 Specificity: 0.742451967063129 Threshold: 0.15 Accuracy: 0.7450319973054901 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.41it/s]
Loss: 0.4823212902992964 AUROC: 0.8235273119292909 AUPRC: 0.6324159832514413 Sensitivity: 0.7529610829103215 Specificity: 0.759493670886076 Threshold: 0.24 Accuracy: 0.7575757575757576 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 0.4549497254985444 AUROC: 0.8186236663359892 AUPRC: 0.6271802520040111 Sensitivity: 0.7490421455938697 Specificity: 0.7385635864592863 Threshold: 0.22 Accuracy: 0.7413270461434827 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.5216603744775057 AUROC: 0.8248147910166802 AUPRC: 0.6352776459705958 Sensitivity: 0.7580372250423012 Specificity: 0.7566807313642757 Threshold: 0.16 Accuracy: 0.7570789865871833 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 0.4921539780941415 AUROC: 0.8192624550284582 AUPRC: 0.6283271880362722 Sensitivity: 0.7445721583652618 Specificity: 0.7472552607502287 Threshold: 0.15 Accuracy: 0.7465476591444931 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.4911631364375353 AUROC: 0.8208286034540612 AUPRC: 0.6260090098648544 Sensitivity: 0.7478849407783418 Specificity: 0.7609001406469761 Threshold: 0.22 Accuracy: 0.7570789865871833 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.43it/s]
Loss: 0.463998869695562 AUROC: 0.8153772146914243 AUPRC: 0.6193780593494433 Sensitivity: 0.7464878671775224 Specificity: 0.739935956084172 Threshold: 0.2 Accuracy: 0.7416638598854833 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0039.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.33it/s]
Loss: 0.508413527160883 AUROC: 0.8237236465405842 AUPRC: 0.6332320038109759 Sensitivity: 0.7529610829103215 Specificity: 0.7637130801687764 Threshold: 0.18 Accuracy: 0.7605563835072032 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.37it/s]
Loss: 0.4803660645129833 AUROC: 0.8181351722735766 AUPRC: 0.6266213879177686 Sensitivity: 0.756066411238825 Specificity: 0.7378774016468436 Threshold: 0.16 Accuracy: 0.7426743011114854 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0040.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
Loss: 0.5097822491079569 AUROC: 0.8234571074319195 AUPRC: 0.635711498477098 Sensitivity: 0.7597292724196277 Specificity: 0.7440225035161744 Threshold: 0.17 Accuracy: 0.7486338797814208 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.38it/s]
Loss: 0.48035110057668484 AUROC: 0.817582485315236 AUPRC: 0.627571971571762 Sensitivity: 0.7541507024265645 Specificity: 0.7417657822506862 Threshold: 0.16 Accuracy: 0.7450319973054901 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0041.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
Loss: 0.5229324083775282 AUROC: 0.8219673441995615 AUPRC: 0.6290174433799963 Sensitivity: 0.7461928934010152 Specificity: 0.7566807313642757 Threshold: 0.16 Accuracy: 0.7536015896671634 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.43it/s]
Loss: 0.49285699173491054 AUROC: 0.8158525634509166 AUPRC: 0.621622422341611 Sensitivity: 0.7420178799489144 Specificity: 0.7502287282708143 Threshold: 0.15 Accuracy: 0.7480633209834961 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0042.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
Loss: 0.5198479909449816 AUROC: 0.8193578787294651 AUPRC: 0.6273879254606383 Sensitivity: 0.7360406091370558 Specificity: 0.7587904360056259 Threshold: 0.17 Accuracy: 0.7521112767014406 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.40it/s]
Loss: 0.4893887011294669 AUROC: 0.8144175345487773 AUPRC: 0.6201865397602173 Sensitivity: 0.7528735632183908 Specificity: 0.7353613906678865 Threshold: 0.15 Accuracy: 0.73997979117548 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0043.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.41it/s]
Loss: 0.5538465343415737 AUROC: 0.8221375008626824 AUPRC: 0.6319981504800394 Sensitivity: 0.7377326565143824 Specificity: 0.760196905766526 Threshold: 0.13 Accuracy: 0.7536015896671634 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.39it/s]
Loss: 0.517737736093237 AUROC: 0.8172407804687675 AUPRC: 0.6256708369264159 Sensitivity: 0.7471264367816092 Specificity: 0.7495425434583715 Threshold: 0.12 Accuracy: 0.7489053553384978 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0044.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.5246996637433767 AUROC: 0.8198124231022772 AUPRC: 0.6282268695669168 Sensitivity: 0.7478849407783418 Specificity: 0.7552742616033755 Threshold: 0.16 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.40it/s]
Loss: 0.4911364177440075 AUROC: 0.8155284587044692 AUPRC: 0.6234412705163416 Sensitivity: 0.743933588761175 Specificity: 0.7522872827081427 Threshold: 0.15 Accuracy: 0.7500842034355002 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0045.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.33it/s]
Loss: 0.525771539658308 AUROC: 0.8139604617790057 AUPRC: 0.615934496125994 Sensitivity: 0.739424703891709 Specificity: 0.7468354430379747 Threshold: 0.17 Accuracy: 0.7446597118728266 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.40it/s]
Loss: 0.49172996079668085 AUROC: 0.8093231454314523 AUPRC: 0.6102812311695665 Sensitivity: 0.7318007662835249 Specificity: 0.75 Threshold: 0.16 Accuracy: 0.7452004041764904 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0046.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.34it/s]
Loss: 0.5251577850431204 AUROC: 0.8210380270394406 AUPRC: 0.6292512500695879 Sensitivity: 0.7597292724196277 Specificity: 0.7447257383966245 Threshold: 0.15 Accuracy: 0.7491306507699951 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.41it/s]
Loss: 0.49262457293398837 AUROC: 0.816816990508507 AUPRC: 0.6267049062164513 Sensitivity: 0.7452107279693486 Specificity: 0.7454254345837146 Threshold: 0.14 Accuracy: 0.7453688110474908 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0047.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
Loss: 0.5047169905155897 AUROC: 0.8160285196846272 AUPRC: 0.6201538290831059 Sensitivity: 0.7563451776649747 Specificity: 0.7440225035161744 Threshold: 0.19 Accuracy: 0.7476403378042722 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.38it/s]
Loss: 0.4736582297593989 AUROC: 0.8116200680284031 AUPRC: 0.6152864204886139 Sensitivity: 0.7349936143039592 Specificity: 0.7486276303751144 Threshold: 0.18 Accuracy: 0.7450319973054901 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0048.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.33it/s]
Loss: 0.5266085267066956 AUROC: 0.8127181991475508 AUPRC: 0.6136615395575606 Sensitivity: 0.7563451776649747 Specificity: 0.7369901547116737 Threshold: 0.16 Accuracy: 0.7426726279185295 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.38it/s]
Loss: 0.4939228391393702 AUROC: 0.8082220802529507 AUPRC: 0.6098152249174061 Sensitivity: 0.7401021711366539 Specificity: 0.734903934126258 Threshold: 0.15 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0049.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
Loss: 0.5177185460925102 AUROC: 0.8100313897396723 AUPRC: 0.6114240505284655 Sensitivity: 0.7343485617597293 Specificity: 0.7447257383966245 Threshold: 0.18 Accuracy: 0.741679085941381 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.36it/s]
Loss: 0.48414507096118115 AUROC: 0.8062280108293928 AUPRC: 0.6069150928838004 Sensitivity: 0.7484035759897829 Specificity: 0.7287282708142726 Threshold: 0.16 Accuracy: 0.7339171438194678 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0050.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:07<00:00, 2.28it/s]
Loss: 0.5279721263796091 AUROC: 0.813369078131656 AUPRC: 0.6173191374379265 Sensitivity: 0.7360406091370558 Specificity: 0.7559774964838256 Threshold: 0.16 Accuracy: 0.7501241927471436 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:20<00:00, 2.32it/s]
Loss: 0.49345116761136565 AUROC: 0.810360017714026 AUPRC: 0.616443255041523 Sensitivity: 0.7509578544061303 Specificity: 0.7326166514181153 Threshold: 0.14 Accuracy: 0.737453688110475 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0051.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.30it/s]
Loss: 0.5753844808787107 AUROC: 0.8181263252586264 AUPRC: 0.6246374544601077 Sensitivity: 0.7411167512690355 Specificity: 0.7468354430379747 Threshold: 0.11 Accuracy: 0.7451564828614009 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:20<00:00, 2.31it/s]
Loss: 0.5361359233551837 AUROC: 0.8138752908033124 AUPRC: 0.6233823912699968 Sensitivity: 0.7509578544061303 Specificity: 0.7387923147301007 Threshold: 0.1 Accuracy: 0.742000673627484 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0052.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.32it/s]
Loss: 0.4975237809121609 AUROC: 0.8148992981930078 AUPRC: 0.617139356745126 Sensitivity: 0.7478849407783418 Specificity: 0.7369901547116737 Threshold: 0.2 Accuracy: 0.7401887729756582 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:20<00:00, 2.35it/s]
Loss: 0.46585126474816746 AUROC: 0.8105693201483024 AUPRC: 0.6154804506499455 Sensitivity: 0.7394636015325671 Specificity: 0.739935956084172 Threshold: 0.19 Accuracy: 0.7398113843044796 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0053.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.39it/s]
Loss: 0.5383100043982267 AUROC: 0.8110154426096082 AUPRC: 0.6103997278646557 Sensitivity: 0.7495769881556683 Specificity: 0.7327707454289732 Threshold: 0.14 Accuracy: 0.7377049180327869 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.37it/s]
Loss: 0.5015347162459759 AUROC: 0.807814210715116 AUPRC: 0.6104204047492027 Sensitivity: 0.7298850574712644 Specificity: 0.7479414455626715 Threshold: 0.14 Accuracy: 0.7431795217244863 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0054.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.5417426954954863 AUROC: 0.8119054928474706 AUPRC: 0.6124495174957656 Sensitivity: 0.7360406091370558 Specificity: 0.7390998593530239 Threshold: 0.14 Accuracy: 0.7382016890213612 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.41it/s]
Loss: 0.5039533281579931 AUROC: 0.8084621280901686 AUPRC: 0.6128044277213387 Sensitivity: 0.7388250319284803 Specificity: 0.7367337602927722 Threshold: 0.13 Accuracy: 0.7372852812394746 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0055.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 0.5588219910860062 AUROC: 0.8100266301127318 AUPRC: 0.6130204488232172 Sensitivity: 0.7461928934010152 Specificity: 0.729957805907173 Threshold: 0.12 Accuracy: 0.7347242921013413 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.47it/s]
Loss: 0.5190516218860098 AUROC: 0.808243623943848 AUPRC: 0.6150598667080314 Sensitivity: 0.7292464878671775 Specificity: 0.744967978042086 Threshold: 0.12 Accuracy: 0.7408218255304816 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0056.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.5455006435513496 AUROC: 0.8035237898053551 AUPRC: 0.6007105180852738 Sensitivity: 0.7478849407783418 Specificity: 0.7285513361462729 Threshold: 0.14 Accuracy: 0.734227521112767 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.39it/s]
Loss: 0.5068324683828557 AUROC: 0.8018298845900826 AUPRC: 0.6001816082701088 Sensitivity: 0.723499361430396 Specificity: 0.7390210430009149 Threshold: 0.14 Accuracy: 0.7349275850454698 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 36, 0.4794 Epoch with best model Test AUROC: 5, 0.8364 Epoch with best model Test Accuracy: 8, 0.7686
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 36, 0.4794
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0036.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.4549497254985444 AUROC: 0.8186236663359892 AUPRC: 0.6271802520040111 Sensitivity: 0.7490421455938697 Specificity: 0.7385635864592863 Threshold: 0.22 Accuracy: 0.7413270461434827
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.8186236663359892
best_model_val_test_auprc: 0.6271802520040111
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 5, 0.8364
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_247b763f_0005.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.5520139701188879 AUROC: 0.8363903465569238 AUPRC: 0.6840826971532205 Sensitivity: 0.7535121328224776 Specificity: 0.7653247941445562 Threshold: 0.1 Accuracy: 0.7622094981475244
best_model_auroc_test_auroc: 0.8363903465569238
best_model_auroc_test_auprc: 0.6840826971532205 Total Processing Time: 4604.3620 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-2,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 128
learning_rate: 0.01
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 10:21:45.141161] Completed epoch 0 with training loss 26.89650536, validation loss 29.39033127 Validation loss improved to 29.39033127. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 10:22:37.933374] Completed epoch 1 with training loss 27.45348358, validation loss 29.24332047 Validation loss improved to 29.24332047. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 10:23:30.426323] Completed epoch 2 with training loss 27.44785690, validation loss 29.39033127 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 10:24:23.571915] Completed epoch 3 with training loss 27.45910645, validation loss 29.39033127 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 10:25:15.727698] Completed epoch 4 with training loss 27.47598076, validation loss 29.35357857 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
[2024-05-03 10:26:08.064297] Completed epoch 5 with training loss 27.46473312, validation loss 29.37195587 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 10:27:00.285606] Completed epoch 6 with training loss 27.45348358, validation loss 29.28007507 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 10:27:52.410415] Completed epoch 7 with training loss 27.43660927, validation loss 29.40870667 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 10:28:44.669149] Completed epoch 8 with training loss 27.45348358, validation loss 29.44545937 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 10:29:36.702106] Completed epoch 9 with training loss 27.49847603, validation loss 29.35357857 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 10:30:30.006132] Completed epoch 10 with training loss 27.52097511, validation loss 29.28007507 No improvement in validation loss. 9 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 10:31:23.990404] Completed epoch 11 with training loss 27.47598076, validation loss 29.24332047 No improvement in validation loss. 10 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.57it/s]
[2024-05-03 10:32:17.487144] Completed epoch 12 with training loss 27.49847603, validation loss 29.24332047 No improvement in validation loss. 11 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 10:33:10.082313] Completed epoch 13 with training loss 27.47035599, validation loss 29.26169777 No improvement in validation loss. 12 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 10:34:02.382507] Completed epoch 14 with training loss 27.44785690, validation loss 29.35357857 No improvement in validation loss. 13 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 10:34:54.303106] Completed epoch 15 with training loss 27.45910645, validation loss 29.18819427 Validation loss improved to 29.18819427. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 10:35:46.437935] Completed epoch 16 with training loss 27.44785690, validation loss 29.39033127 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 10:36:37.930240] Completed epoch 17 with training loss 27.46473312, validation loss 29.33520126 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
[2024-05-03 10:37:30.038396] Completed epoch 18 with training loss 27.43098450, validation loss 29.35357857 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.56it/s]
[2024-05-03 10:38:22.140742] Completed epoch 19 with training loss 27.49847603, validation loss 29.24332047 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 10:39:14.518305] Completed epoch 20 with training loss 27.45910645, validation loss 29.40870667 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 10:40:05.755485] Completed epoch 21 with training loss 27.47598076, validation loss 29.33520126 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 10:40:56.908730] Completed epoch 22 with training loss 27.47035599, validation loss 29.42708206 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 10:41:48.975047] Completed epoch 23 with training loss 27.47598076, validation loss 29.29845047 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.58it/s]
[2024-05-03 10:42:40.668665] Completed epoch 24 with training loss 27.47598076, validation loss 29.31682587 No improvement in validation loss. 9 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 10:43:32.728895] Completed epoch 25 with training loss 27.45910645, validation loss 29.31682587 No improvement in validation loss. 10 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 10:44:25.718857] Completed epoch 26 with training loss 27.44785690, validation loss 29.37195587 No improvement in validation loss. 11 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.57it/s]
[2024-05-03 10:45:17.028082] Completed epoch 27 with training loss 27.45910645, validation loss 29.28007507 No improvement in validation loss. 12 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.56it/s]
[2024-05-03 10:46:08.356937] Completed epoch 28 with training loss 27.47035599, validation loss 29.35357857 No improvement in validation loss. 13 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 10:47:01.777201] Completed epoch 29 with training loss 27.48160362, validation loss 29.42708206 No improvement in validation loss. 14 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 10:47:55.380517] Completed epoch 30 with training loss 27.44223404, validation loss 29.28007507 No improvement in validation loss. 15 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
[2024-05-03 10:48:48.489297] Completed epoch 31 with training loss 27.47598076, validation loss 29.28007507 No improvement in validation loss. 16 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 10:49:40.344499] Completed epoch 32 with training loss 27.46473312, validation loss 29.42708206 No improvement in validation loss. 17 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
[2024-05-03 10:50:34.852410] Completed epoch 33 with training loss 27.52097511, validation loss 29.44545937 No improvement in validation loss. 18 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
[2024-05-03 10:51:27.612728] Completed epoch 34 with training loss 27.44785690, validation loss 29.29845047 No improvement in validation loss. 19 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
[2024-05-03 10:52:20.333833] Completed epoch 35 with training loss 27.47035599, validation loss 29.28007507 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 15, 29.19
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:05<00:00, 2.81it/s]
Loss: 29.280073881149292 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 29.2065691947937 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 29.427083253860474 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
Loss: 29.280073881149292 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.38it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.37it/s]
Loss: 29.243321537971497 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:20<00:00, 2.34it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
Loss: 29.40870714187622 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.43it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 29.371954798698425 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
Loss: 29.390331029891968 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
Loss: 29.445459604263306 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 29.33520245552063 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 29.390331029891968 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 29.26169776916504 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.50it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 29.390331029891968 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.46it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 29.316826224327087 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 29.316826224327087 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 29.53734040260315 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 29.33520245552063 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.47it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 29.224945425987244 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 29.298450112342834 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.44it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 29.371954798698425 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:20<00:00, 2.31it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 29.316826224327087 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.46it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
Loss: 29.371954798698425 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.43it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 29.445459604263306 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.47it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
Loss: 29.33520245552063 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 29.26169776916504 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 29.40870714187622 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 29.353578686714172 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 29.353578686714172 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 29.33520245552063 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
Loss: 29.353578686714172 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 29.243321537971497 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
Loss: 29.224945425987244 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.51it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 29.427083253860474 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 29.316826224327087 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 29.2065691947937 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 29.40870714187622 AUROC: 0.5 AUPRC: 0.646795827123696 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.706408345752608 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.51it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 15, 29.19 Epoch with best model Test AUROC: 0, 0.5 Epoch with best model Test Accuracy: 0, 0.7363
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 15, 29.19
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0015.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.50it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.5
best_model_val_test_auprc: 0.6318625799932638
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 0, 0.5
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-02_LEARNING_RATE_003_MINS__ALL_MAX_CASES_5734575d_0000.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 26.10837765957447 AUROC: 0.5 AUPRC: 0.6318625799932638 Sensitivity: 0.0 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7362748400134725
best_model_auroc_test_auroc: 0.5
best_model_auroc_test_auprc: 0.6318625799932638 Total Processing Time: 2878.2630 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-3,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 128
learning_rate: 0.001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 11:09:42.703009] Completed epoch 0 with training loss 0.46423593, validation loss 0.55611765 Validation loss improved to 0.55611765. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
[2024-05-03 11:10:34.943579] Completed epoch 1 with training loss 0.43096617, validation loss 0.52088046 Validation loss improved to 0.52088046. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
[2024-05-03 11:11:26.903108] Completed epoch 2 with training loss 0.42810401, validation loss 0.49270666 Validation loss improved to 0.49270666. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 11:12:19.147914] Completed epoch 3 with training loss 0.42335933, validation loss 0.49514502 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 11:13:11.429267] Completed epoch 4 with training loss 0.42071965, validation loss 0.62278050 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
[2024-05-03 11:14:03.802942] Completed epoch 5 with training loss 0.41893396, validation loss 0.52890670 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:07<00:00, 2.12it/s]
[2024-05-03 11:14:56.875554] Completed epoch 6 with training loss 0.41558295, validation loss 0.50233620 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
[2024-05-03 11:15:50.901626] Completed epoch 7 with training loss 0.41375160, validation loss 0.55588353 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
[2024-05-03 11:16:43.770860] Completed epoch 8 with training loss 0.40871316, validation loss 0.57673758 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 11:17:35.291619] Completed epoch 9 with training loss 0.40706632, validation loss 0.58177203 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 11:18:27.036819] Completed epoch 10 with training loss 0.40969396, validation loss 0.51723158 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 11:19:18.657121] Completed epoch 11 with training loss 0.39834848, validation loss 0.56230974 No improvement in validation loss. 9 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
[2024-05-03 11:20:10.998424] Completed epoch 12 with training loss 0.39971253, validation loss 0.59179890 No improvement in validation loss. 10 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 11:21:02.468155] Completed epoch 13 with training loss 0.39500466, validation loss 0.49403298 No improvement in validation loss. 11 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 11:21:54.218732] Completed epoch 14 with training loss 0.39415148, validation loss 0.47151977 Validation loss improved to 0.47151977. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 11:22:46.150100] Completed epoch 15 with training loss 0.39525878, validation loss 0.50882357 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 11:23:37.732858] Completed epoch 16 with training loss 0.38879392, validation loss 0.46090400 Validation loss improved to 0.46090400. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 11:24:29.599865] Completed epoch 17 with training loss 0.38778397, validation loss 0.52161479 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
[2024-05-03 11:25:21.282614] Completed epoch 18 with training loss 0.38148946, validation loss 0.56085432 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 11:26:13.085530] Completed epoch 19 with training loss 0.38056201, validation loss 0.49885330 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 11:27:04.937630] Completed epoch 20 with training loss 0.37592107, validation loss 0.63053268 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 11:27:56.401620] Completed epoch 21 with training loss 0.37994614, validation loss 0.73757052 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 11:28:47.990848] Completed epoch 22 with training loss 0.36971229, validation loss 0.49830377 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 11:29:39.601272] Completed epoch 23 with training loss 0.36943913, validation loss 0.47155666 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
[2024-05-03 11:30:31.231841] Completed epoch 24 with training loss 0.36546251, validation loss 0.51036161 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:07<00:00, 2.15it/s]
[2024-05-03 11:31:23.897877] Completed epoch 25 with training loss 0.36397603, validation loss 0.50092483 No improvement in validation loss. 9 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.59it/s]
[2024-05-03 11:32:14.999729] Completed epoch 26 with training loss 0.36041373, validation loss 0.50063735 No improvement in validation loss. 10 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.07it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.60it/s]
[2024-05-03 11:33:05.574774] Completed epoch 27 with training loss 0.35898218, validation loss 0.65012813 No improvement in validation loss. 11 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.01it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 11:33:57.835472] Completed epoch 28 with training loss 0.36020204, validation loss 0.62398404 No improvement in validation loss. 12 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.31it/s]
[2024-05-03 11:34:52.659734] Completed epoch 29 with training loss 0.35695034, validation loss 0.52094102 No improvement in validation loss. 13 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.93it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
[2024-05-03 11:35:46.864080] Completed epoch 30 with training loss 0.35038379, validation loss 0.64545298 No improvement in validation loss. 14 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 11:36:39.662600] Completed epoch 31 with training loss 0.35189059, validation loss 0.56954610 No improvement in validation loss. 15 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 11:37:32.148580] Completed epoch 32 with training loss 0.34783036, validation loss 0.78567231 No improvement in validation loss. 16 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 11:38:24.617522] Completed epoch 33 with training loss 0.34309724, validation loss 0.56573129 No improvement in validation loss. 17 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 11:39:17.151204] Completed epoch 34 with training loss 0.34519258, validation loss 0.56332898 No improvement in validation loss. 18 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 11:40:10.331210] Completed epoch 35 with training loss 0.34144175, validation loss 0.60875356 No improvement in validation loss. 19 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.00it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 11:41:02.795368] Completed epoch 36 with training loss 0.33515221, validation loss 0.56248480 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 16, 0.4609
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:05<00:00, 2.75it/s]
Loss: 0.555572398006916 AUROC: 0.8452835666740441 AUPRC: 0.6992692237743106 Sensitivity: 0.7732656514382402 Specificity: 0.7573839662447257 Threshold: 0.12 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.46it/s]
Loss: 0.5215346017416488 AUROC: 0.8357641919611507 AUPRC: 0.6840748282867665 Sensitivity: 0.7515964240102171 Specificity: 0.7685269899359561 Threshold: 0.12 Accuracy: 0.7640619737285281 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 0.5238506589084864 AUROC: 0.8402562107182039 AUPRC: 0.6906884187864709 Sensitivity: 0.7597292724196277 Specificity: 0.7609001406469761 Threshold: 0.17 Accuracy: 0.7605563835072032 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.49751259101198075 AUROC: 0.8294183700058073 AUPRC: 0.6721377893943806 Sensitivity: 0.7477650063856961 Specificity: 0.7589204025617566 Threshold: 0.16 Accuracy: 0.7559784439205119 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
Loss: 0.49287222884595394 AUROC: 0.839143647920876 AUPRC: 0.687929079707332 Sensitivity: 0.754653130287648 Specificity: 0.7630098452883263 Threshold: 0.21 Accuracy: 0.7605563835072032 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.4713360026795813 AUROC: 0.8289956754874571 AUPRC: 0.6700806006387936 Sensitivity: 0.7567049808429118 Specificity: 0.7509149130832571 Threshold: 0.19 Accuracy: 0.7524418996295049 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.4949106480926275 AUROC: 0.8369090030723392 AUPRC: 0.6728756849157947 Sensitivity: 0.7614213197969543 Specificity: 0.7566807313642757 Threshold: 0.22 Accuracy: 0.7580725285643318 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 0.47293390111720307 AUROC: 0.8244431649682935 AUPRC: 0.6585916075658996 Sensitivity: 0.7458492975734355 Specificity: 0.7568618481244281 Threshold: 0.21 Accuracy: 0.7539575614685079 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
Loss: 0.6223115921020508 AUROC: 0.8441531552756895 AUPRC: 0.689587797708378 Sensitivity: 0.7428087986463621 Specificity: 0.7770745428973277 Threshold: 0.08 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.5925399049165401 AUROC: 0.8326066901996801 AUPRC: 0.6723120601525634 Sensitivity: 0.7541507024265645 Specificity: 0.7632662397072278 Threshold: 0.07 Accuracy: 0.7608622431795218 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.5302465390414 AUROC: 0.8433095114004964 AUPRC: 0.6796479024044924 Sensitivity: 0.7563451776649747 Specificity: 0.7651195499296765 Threshold: 0.13 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.47it/s]
Loss: 0.5086775485505449 AUROC: 0.8319248141254167 AUPRC: 0.6663121456300446 Sensitivity: 0.7624521072796935 Specificity: 0.747483989021043 Threshold: 0.11 Accuracy: 0.7514314584035029 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 0.5028159730136395 AUROC: 0.8291639001335075 AUPRC: 0.6478463404884954 Sensitivity: 0.7563451776649747 Specificity: 0.7735583684950773 Threshold: 0.43 Accuracy: 0.7685047193243915 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.4902145431396809 AUROC: 0.8216991560131289 AUPRC: 0.6399858083183155 Sensitivity: 0.7586206896551724 Specificity: 0.7477127172918573 Threshold: 0.41000000000000003 Accuracy: 0.7505894240485012 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
Loss: 0.5549170635640621 AUROC: 0.8412831002306039 AUPRC: 0.665289821661801 Sensitivity: 0.7766497461928934 Specificity: 0.7672292545710268 Threshold: 0.13 Accuracy: 0.7699950322901142 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 0.5297312879181922 AUROC: 0.8258158267110219 AUPRC: 0.6516379986711575 Sensitivity: 0.7509578544061303 Specificity: 0.7481701738334858 Threshold: 0.12 Accuracy: 0.7489053553384978 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
Loss: 0.5729344617575407 AUROC: 0.8398623515888824 AUPRC: 0.65953929495093 Sensitivity: 0.7698815566835872 Specificity: 0.7693389592123769 Threshold: 0.11 Accuracy: 0.76949826130154 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.50it/s]
Loss: 0.5506422440422342 AUROC: 0.8262006919687459 AUPRC: 0.6486467803883764 Sensitivity: 0.7458492975734355 Specificity: 0.7511436413540714 Threshold: 0.1 Accuracy: 0.7497473896934995 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
Loss: 0.5826754048466682 AUROC: 0.8310867894174454 AUPRC: 0.6252636060612299 Sensitivity: 0.7461928934010152 Specificity: 0.7869198312236287 Threshold: 0.12 Accuracy: 0.7749627421758569 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.47it/s]
Loss: 0.5500412665783091 AUROC: 0.8191357489141979 AUPRC: 0.6218288406078215 Sensitivity: 0.7611749680715197 Specificity: 0.7319304666056725 Threshold: 0.1 Accuracy: 0.7396429774334793 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
Loss: 0.5175346303731203 AUROC: 0.8279847025590134 AUPRC: 0.6388123161679106 Sensitivity: 0.754653130287648 Specificity: 0.7566807313642757 Threshold: 0.17 Accuracy: 0.7560854446100348 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.4951318813131211 AUROC: 0.8178380884275764 AUPRC: 0.6267603481138552 Sensitivity: 0.7330779054916986 Specificity: 0.7504574565416285 Threshold: 0.16 Accuracy: 0.7458740316604917 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 0.5654339771717787 AUROC: 0.8352514629903308 AUPRC: 0.6574008488382533 Sensitivity: 0.7715736040609137 Specificity: 0.7510548523206751 Threshold: 0.11 Accuracy: 0.7570789865871833 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.40it/s]
Loss: 0.5339380873644606 AUROC: 0.8262186572160702 AUPRC: 0.6480156359887923 Sensitivity: 0.7445721583652618 Specificity: 0.7573193046660567 Threshold: 0.11 Accuracy: 0.7539575614685079 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 0.5945740323513746 AUROC: 0.8307429063709986 AUPRC: 0.6492201844125687 Sensitivity: 0.7495769881556683 Specificity: 0.7630098452883263 Threshold: 0.1 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.47it/s]
Loss: 0.5569047613980922 AUROC: 0.8249055875132476 AUPRC: 0.6432578003058609 Sensitivity: 0.7630906768837803 Specificity: 0.7481701738334858 Threshold: 0.09 Accuracy: 0.7521050858875042 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
Loss: 0.4944318048655987 AUROC: 0.8026617023757677 AUPRC: 0.5777647868458313 Sensitivity: 0.7343485617597293 Specificity: 0.7369901547116737 Threshold: 0.27 Accuracy: 0.736214605067064 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 0.4693794890921167 AUROC: 0.7978227580831927 AUPRC: 0.5795064533157713 Sensitivity: 0.7203065134099617 Specificity: 0.7403934126258005 Threshold: 0.26 Accuracy: 0.7350959919164702 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 0.47031228989362717 AUROC: 0.8252978931511347 AUPRC: 0.6456577005066627 Sensitivity: 0.7428087986463621 Specificity: 0.7587904360056259 Threshold: 0.38 Accuracy: 0.7540983606557377 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.454097218335943 AUROC: 0.8209593675765552 AUPRC: 0.6395126124901845 Sensitivity: 0.756066411238825 Specificity: 0.7429094236047575 Threshold: 0.36 Accuracy: 0.7463792522734928 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
Loss: 0.512966088950634 AUROC: 0.8237343557012002 AUPRC: 0.6280538415833656 Sensitivity: 0.7445008460236887 Specificity: 0.7679324894514767 Threshold: 0.18 Accuracy: 0.7610531544957775 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.48it/s]
Loss: 0.4848339728852536 AUROC: 0.8148947090447863 AUPRC: 0.6141703860603077 Sensitivity: 0.7471264367816092 Specificity: 0.7339890210430009 Threshold: 0.16 Accuracy: 0.737453688110475 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 0.4610835239291191 AUROC: 0.8268412021865726 AUPRC: 0.6547785568933091 Sensitivity: 0.7580372250423012 Specificity: 0.7545710267229254 Threshold: 0.31 Accuracy: 0.7555886736214605 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 0.44281463451842046 AUROC: 0.8201596949822334 AUPRC: 0.6447388507645381 Sensitivity: 0.7509578544061303 Specificity: 0.7518298261665142 Threshold: 0.3 Accuracy: 0.7515998652745032 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5201683379709721 AUROC: 0.8155787349387554 AUPRC: 0.6168574612514094 Sensitivity: 0.7529610829103215 Specificity: 0.7461322081575246 Threshold: 0.16 Accuracy: 0.7481371087928465 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.49336153839496855 AUROC: 0.807466006246648 AUPRC: 0.6103479323187643 Sensitivity: 0.7343550446998723 Specificity: 0.734903934126258 Threshold: 0.15 Accuracy: 0.7347591781744696 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5597958099097013 AUROC: 0.8093650419680106 AUPRC: 0.6163288320072804 Sensitivity: 0.7343485617597293 Specificity: 0.740506329113924 Threshold: 0.13 Accuracy: 0.7386984600099354 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.5246913702564037 AUROC: 0.8029196302021806 AUPRC: 0.6016937895094899 Sensitivity: 0.7426564495530013 Specificity: 0.729871912168344 Threshold: 0.12 Accuracy: 0.7332435163354665 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 0.4993542768061161 AUROC: 0.8090104497609478 AUPRC: 0.627278056142535 Sensitivity: 0.7478849407783418 Specificity: 0.750351617440225 Threshold: 0.4 Accuracy: 0.7496274217585693 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.48034185107718125 AUROC: 0.8026169961171696 AUPRC: 0.6192729073472525 Sensitivity: 0.7305236270753512 Specificity: 0.7381061299176578 Threshold: 0.38 Accuracy: 0.7361064331424723 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 0.6319143176078796 AUROC: 0.8130989693027859 AUPRC: 0.6082268821316241 Sensitivity: 0.7343485617597293 Specificity: 0.7510548523206751 Threshold: 0.08 Accuracy: 0.7461500248385494 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.50it/s]
Loss: 0.596272016459323 AUROC: 0.8071172175424943 AUPRC: 0.6003359793649337 Sensitivity: 0.7420178799489144 Specificity: 0.7291857273559011 Threshold: 0.07 Accuracy: 0.7325698888514651 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.7362904362380505 AUROC: 0.7831704351012968 AUPRC: 0.5661842189566171 Sensitivity: 0.6937394247038917 Specificity: 0.7383966244725738 Threshold: 0.06 Accuracy: 0.7252856433184302 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.47it/s]
Loss: 0.6821564252072192 AUROC: 0.7813743326567884 AUPRC: 0.5595128988934368 Sensitivity: 0.7266922094508301 Specificity: 0.7090576395242452 Threshold: 0.05 Accuracy: 0.7137083192994275 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.49616968631744385 AUROC: 0.8120863586712073 AUPRC: 0.62529781817341 Sensitivity: 0.7495769881556683 Specificity: 0.740506329113924 Threshold: 0.19 Accuracy: 0.7431693989071039 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.46705295145511627 AUROC: 0.810227542272373 AUPRC: 0.6174009640945723 Sensitivity: 0.7337164750957854 Specificity: 0.7390210430009149 Threshold: 0.18 Accuracy: 0.7376220949814752 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
Loss: 0.4711654335260391 AUROC: 0.8162034359746884 AUPRC: 0.6425975138917881 Sensitivity: 0.7495769881556683 Specificity: 0.7426160337552743 Threshold: 0.26 Accuracy: 0.7446597118728266 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.44967230995918844 AUROC: 0.8117285898069568 AUPRC: 0.6219334242000751 Sensitivity: 0.7484035759897829 Specificity: 0.7431381518755719 Threshold: 0.25 Accuracy: 0.744526776692489 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.5087292231619358 AUROC: 0.7986493368649765 AUPRC: 0.594006299824645 Sensitivity: 0.7326565143824028 Specificity: 0.7250351617440225 Threshold: 0.2 Accuracy: 0.7272727272727273 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.47995816076055486 AUROC: 0.7961602424110705 AUPRC: 0.5835792060305323 Sensitivity: 0.7247765006385696 Specificity: 0.7365050320219579 Threshold: 0.19 Accuracy: 0.7334119232064669 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 0.5021091066300869 AUROC: 0.8066472949850191 AUPRC: 0.6257229183969472 Sensitivity: 0.7461928934010152 Specificity: 0.7355836849507735 Threshold: 0.4 Accuracy: 0.7386984600099354 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.47762789561393415 AUROC: 0.8023748304255924 AUPRC: 0.6165561966243851 Sensitivity: 0.7260536398467433 Specificity: 0.7376486733760292 Threshold: 0.39 Accuracy: 0.7345907713034692 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.500686664134264 AUROC: 0.815909529011116 AUPRC: 0.6394841459007257 Sensitivity: 0.7445008460236887 Specificity: 0.7433192686357243 Threshold: 0.42 Accuracy: 0.7436661698956781 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.47399911094219127 AUROC: 0.8132733819884812 AUPRC: 0.6289223723614324 Sensitivity: 0.7452107279693486 Specificity: 0.7410795974382434 Threshold: 0.4 Accuracy: 0.7421690804984843 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
Loss: 0.6528439708054066 AUROC: 0.8032048948003457 AUPRC: 0.5980477259631047 Sensitivity: 0.7411167512690355 Specificity: 0.7222222222222222 Threshold: 0.07 Accuracy: 0.7277694982613016 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.609232504000055 AUROC: 0.7988038358578158 AUPRC: 0.5908082297617817 Sensitivity: 0.7203065134099617 Specificity: 0.7410795974382434 Threshold: 0.07 Accuracy: 0.7356012125294712 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.6237866021692753 AUROC: 0.8074445324975429 AUPRC: 0.5986255939771249 Sensitivity: 0.7343485617597293 Specificity: 0.7362869198312236 Threshold: 0.08 Accuracy: 0.7357178340784898 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.5900881629674992 AUROC: 0.8023406526379994 AUPRC: 0.594204912915874 Sensitivity: 0.7362707535121328 Specificity: 0.727355901189387 Threshold: 0.07 Accuracy: 0.7297069720444594 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
Loss: 0.5198144484311342 AUROC: 0.7983381762537454 AUPRC: 0.5991910178032134 Sensitivity: 0.7292724196277496 Specificity: 0.7355836849507735 Threshold: 0.4 Accuracy: 0.7337307501241928 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.48822682588658434 AUROC: 0.7928174649078836 AUPRC: 0.5916560484449205 Sensitivity: 0.7266922094508301 Specificity: 0.7259835315645013 Threshold: 0.37 Accuracy: 0.7261704277534523 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 0.6503834389150143 AUROC: 0.7542247638630084 AUPRC: 0.5360040463868773 Sensitivity: 0.7021996615905245 Specificity: 0.6856540084388185 Threshold: 0.09 Accuracy: 0.6905116741182314 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.5974084230813574 AUROC: 0.7584797427960819 AUPRC: 0.5209161834786165 Sensitivity: 0.6915708812260536 Specificity: 0.7067703568161025 Threshold: 0.09 Accuracy: 0.7027618726844055 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5713856015354395 AUROC: 0.8020721035885207 AUPRC: 0.6262738361004327 Sensitivity: 0.7191201353637902 Specificity: 0.7355836849507735 Threshold: 0.12 Accuracy: 0.7307501241927471 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.5425181984901428 AUROC: 0.7924339141804516 AUPRC: 0.5985529270426999 Sensitivity: 0.7203065134099617 Specificity: 0.7282708142726441 Threshold: 0.11 Accuracy: 0.7261704277534523 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.784771516919136 AUROC: 0.7453766173807298 AUPRC: 0.5184445291463318 Sensitivity: 0.6683587140439933 Specificity: 0.69901547116737 Threshold: 0.05 Accuracy: 0.6900149031296572 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.7181909743775713 AUROC: 0.7526741927907652 AUPRC: 0.504973952741539 Sensitivity: 0.722860791826309 Specificity: 0.6710887465690759 Threshold: 0.04 Accuracy: 0.6847423374873695 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5642521418631077 AUROC: 0.7727063952727385 AUPRC: 0.5607067093675303 Sensitivity: 0.7089678510998308 Specificity: 0.7123769338959213 Threshold: 0.39 Accuracy: 0.7113760556383507 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.526269997053958 AUROC: 0.767222829827335 AUPRC: 0.5486056737328506 Sensitivity: 0.7043422733077905 Specificity: 0.6985361390667887 Threshold: 0.35000000000000003 Accuracy: 0.7000673627484001 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5611789803951979 AUROC: 0.7321722223412129 AUPRC: 0.5166450736573639 Sensitivity: 0.6734348561759729 Specificity: 0.6652601969057665 Threshold: 0.24 Accuracy: 0.6676602086438153 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.51it/s]
Loss: 0.5177544234914983 AUROC: 0.7362051730564524 AUPRC: 0.5052448021388973 Sensitivity: 0.6864623243933589 Specificity: 0.6740622140896615 Threshold: 0.23 Accuracy: 0.6773324351633546 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.6094383969902992 AUROC: 0.7171746378518851 AUPRC: 0.4947564149311754 Sensitivity: 0.6531302876480541 Specificity: 0.6554149085794655 Threshold: 0.16 Accuracy: 0.6547441629408842 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.5629143382006503 AUROC: 0.7214754229574244 AUPRC: 0.4767464313600863 Sensitivity: 0.6634738186462324 Specificity: 0.6726898444647759 Threshold: 0.15 Accuracy: 0.6702593465813406 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5629648193717003 AUROC: 0.8020869774227095 AUPRC: 0.609598467503317 Sensitivity: 0.7428087986463621 Specificity: 0.7440225035161744 Threshold: 0.48 Accuracy: 0.7436661698956781 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.5275455129907486 AUROC: 0.7953302625905712 AUPRC: 0.5984965040050139 Sensitivity: 0.7273307790549169 Specificity: 0.7358188472095151 Threshold: 0.46 Accuracy: 0.7335803300774671 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 16, 0.4609 Epoch with best model Test AUROC: 0, 0.8358 Epoch with best model Test Accuracy: 0, 0.7641
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 16, 0.4609
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0016.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.44281463451842046 AUROC: 0.8201596949822334 AUPRC: 0.6447388507645381 Sensitivity: 0.7509578544061303 Specificity: 0.7518298261665142 Threshold: 0.3 Accuracy: 0.7515998652745032
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.8201596949822334
best_model_val_test_auprc: 0.6447388507645381
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 0, 0.8358
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-03_LEARNING_RATE_003_MINS__ALL_MAX_CASES_f192954f_0000.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.5215346017416488 AUROC: 0.8357641919611507 AUPRC: 0.6840748282867665 Sensitivity: 0.7515964240102171 Specificity: 0.7685269899359561 Threshold: 0.12 Accuracy: 0.7640619737285281
best_model_auroc_test_auroc: 0.8357641919611507
best_model_auroc_test_auprc: 0.6840748282867665 Total Processing Time: 2936.3660 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=False,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 128
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: False
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 11:58:38.655356] Completed epoch 0 with training loss 0.49746269, validation loss 0.58577287 Validation loss improved to 0.58577287. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 11:59:30.034862] Completed epoch 1 with training loss 0.44051114, validation loss 0.60004735 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:08<00:00, 1.97it/s]
[2024-05-03 12:00:23.357350] Completed epoch 2 with training loss 0.43296921, validation loss 0.57985026 Validation loss improved to 0.57985026. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
[2024-05-03 12:01:17.398920] Completed epoch 3 with training loss 0.42964807, validation loss 0.58797473 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.32it/s]
[2024-05-03 12:02:11.253001] Completed epoch 4 with training loss 0.42745328, validation loss 0.60497987 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:48<00:00, 1.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
[2024-05-03 12:03:05.958401] Completed epoch 5 with training loss 0.42538333, validation loss 0.59091270 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 12:03:59.971282] Completed epoch 6 with training loss 0.42322877, validation loss 0.56010288 Validation loss improved to 0.56010288. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 12:04:53.115736] Completed epoch 7 with training loss 0.42231730, validation loss 0.55182755 Validation loss improved to 0.55182755. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 12:05:45.879112] Completed epoch 8 with training loss 0.42301348, validation loss 0.56768674 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:48<00:00, 1.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.36it/s]
[2024-05-03 12:06:41.036846] Completed epoch 9 with training loss 0.42012593, validation loss 0.53465033 Validation loss improved to 0.53465033. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 12:07:35.430706] Completed epoch 10 with training loss 0.42109573, validation loss 0.53814483 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
[2024-05-03 12:08:28.784649] Completed epoch 11 with training loss 0.41748631, validation loss 0.53835535 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:48<00:00, 1.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
[2024-05-03 12:09:23.583625] Completed epoch 12 with training loss 0.41511062, validation loss 0.53044683 Validation loss improved to 0.53044683. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.41it/s]
[2024-05-03 12:10:16.981477] Completed epoch 13 with training loss 0.41391191, validation loss 0.50421149 Validation loss improved to 0.50421149. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
[2024-05-03 12:11:10.301631] Completed epoch 14 with training loss 0.41512406, validation loss 0.50084156 Validation loss improved to 0.50084156. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:07<00:00, 2.22it/s]
[2024-05-03 12:12:05.502702] Completed epoch 15 with training loss 0.41256812, validation loss 0.51939058 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:48<00:00, 1.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
[2024-05-03 12:13:00.340159] Completed epoch 16 with training loss 0.41214055, validation loss 0.51545161 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 12:13:53.009986] Completed epoch 17 with training loss 0.41180333, validation loss 0.53679717 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 12:14:45.920189] Completed epoch 18 with training loss 0.40827265, validation loss 0.55217409 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 12:15:38.812994] Completed epoch 19 with training loss 0.41025606, validation loss 0.54582381 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.36it/s]
[2024-05-03 12:16:32.461495] Completed epoch 20 with training loss 0.40774557, validation loss 0.51761854 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.45it/s]
[2024-05-03 12:17:26.345605] Completed epoch 21 with training loss 0.40708104, validation loss 0.53971648 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:48<00:00, 1.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.40it/s]
[2024-05-03 12:18:21.146994] Completed epoch 22 with training loss 0.40380394, validation loss 0.50538218 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.93it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.43it/s]
[2024-05-03 12:19:15.405760] Completed epoch 23 with training loss 0.40765908, validation loss 0.49796593 Validation loss improved to 0.49796593. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.32it/s]
[2024-05-03 12:20:08.933662] Completed epoch 24 with training loss 0.40350404, validation loss 0.49462998 Validation loss improved to 0.49462998. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.95it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.42it/s]
[2024-05-03 12:21:02.768119] Completed epoch 25 with training loss 0.40379453, validation loss 0.51645631 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.33it/s]
[2024-05-03 12:21:57.140207] Completed epoch 26 with training loss 0.40188640, validation loss 0.48724911 Validation loss improved to 0.48724911. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:48<00:00, 1.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.41it/s]
[2024-05-03 12:22:51.897624] Completed epoch 27 with training loss 0.40263230, validation loss 0.55444866 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
[2024-05-03 12:23:45.070868] Completed epoch 28 with training loss 0.40174523, validation loss 0.57130253 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 12:24:38.522831] Completed epoch 29 with training loss 0.40087989, validation loss 0.50853348 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.34it/s]
[2024-05-03 12:25:32.333236] Completed epoch 30 with training loss 0.39877826, validation loss 0.51049143 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
[2024-05-03 12:26:25.963713] Completed epoch 31 with training loss 0.39727166, validation loss 0.53262198 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 12:27:19.144531] Completed epoch 32 with training loss 0.39887607, validation loss 0.50671685 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
[2024-05-03 12:28:12.132009] Completed epoch 33 with training loss 0.39428595, validation loss 0.51482642 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:47<00:00, 1.93it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 12:29:06.313831] Completed epoch 34 with training loss 0.39268249, validation loss 0.50976002 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 12:29:58.984914] Completed epoch 35 with training loss 0.39335704, validation loss 0.52480960 No improvement in validation loss. 9 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.98it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.55it/s]
[2024-05-03 12:30:51.720329] Completed epoch 36 with training loss 0.39329740, validation loss 0.47915348 Validation loss improved to 0.47915348. Model saved.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.99it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.38it/s]
[2024-05-03 12:31:44.653031] Completed epoch 37 with training loss 0.39384893, validation loss 0.52553630 No improvement in validation loss. 1 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.97it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.58it/s]
[2024-05-03 12:32:37.490104] Completed epoch 38 with training loss 0.39110643, validation loss 0.49174047 No improvement in validation loss. 2 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:46<00:00, 1.96it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 12:33:30.920844] Completed epoch 39 with training loss 0.38970065, validation loss 0.50889462 No improvement in validation loss. 3 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 12:34:22.634804] Completed epoch 40 with training loss 0.38868669, validation loss 0.50876194 No improvement in validation loss. 4 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.58it/s]
[2024-05-03 12:35:13.951909] Completed epoch 41 with training loss 0.38771927, validation loss 0.52325362 No improvement in validation loss. 5 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
[2024-05-03 12:36:05.450538] Completed epoch 42 with training loss 0.38920215, validation loss 0.51783639 No improvement in validation loss. 6 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.56it/s]
[2024-05-03 12:36:56.845846] Completed epoch 43 with training loss 0.38853744, validation loss 0.55582452 No improvement in validation loss. 7 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.57it/s]
[2024-05-03 12:37:48.079705] Completed epoch 44 with training loss 0.38629317, validation loss 0.52315962 No improvement in validation loss. 8 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.02it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 12:38:39.879855] Completed epoch 45 with training loss 0.38561618, validation loss 0.52709818 No improvement in validation loss. 9 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.56it/s]
[2024-05-03 12:39:31.146897] Completed epoch 46 with training loss 0.38071805, validation loss 0.52486867 No improvement in validation loss. 10 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.04it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
[2024-05-03 12:40:22.819170] Completed epoch 47 with training loss 0.38133514, validation loss 0.50297087 No improvement in validation loss. 11 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.57it/s]
[2024-05-03 12:41:13.904856] Completed epoch 48 with training loss 0.38362661, validation loss 0.52792907 No improvement in validation loss. 12 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
[2024-05-03 12:42:05.213496] Completed epoch 49 with training loss 0.37950292, validation loss 0.51787710 No improvement in validation loss. 13 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.58it/s]
[2024-05-03 12:42:56.344868] Completed epoch 50 with training loss 0.37908927, validation loss 0.52853423 No improvement in validation loss. 14 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.55it/s]
[2024-05-03 12:43:47.422836] Completed epoch 51 with training loss 0.38233322, validation loss 0.57559288 No improvement in validation loss. 15 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:45<00:00, 2.03it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.59it/s]
[2024-05-03 12:44:39.034344] Completed epoch 52 with training loss 0.37836424, validation loss 0.49531162 No improvement in validation loss. 16 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.06it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.58it/s]
[2024-05-03 12:45:29.900216] Completed epoch 53 with training loss 0.37696713, validation loss 0.53763485 No improvement in validation loss. 17 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.05it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.59it/s]
[2024-05-03 12:46:21.034301] Completed epoch 54 with training loss 0.37627149, validation loss 0.53812683 No improvement in validation loss. 18 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.07it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.59it/s]
[2024-05-03 12:47:11.623353] Completed epoch 55 with training loss 0.37668973, validation loss 0.55982792 No improvement in validation loss. 19 epochs without improvement.
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 92/92 [00:44<00:00, 2.07it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.54it/s]
[2024-05-03 12:48:02.489050] Completed epoch 56 with training loss 0.37218001, validation loss 0.54600465 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 36, 0.4792
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:05<00:00, 2.83it/s]
Loss: 0.5844770893454552 AUROC: 0.8407452623863342 AUPRC: 0.6856679666427512 Sensitivity: 0.7868020304568528 Specificity: 0.750351617440225 Threshold: 0.14 Accuracy: 0.7610531544957775 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.57it/s]
Loss: 0.547472302583938 AUROC: 0.8266157183937258 AUPRC: 0.6633645058291793 Sensitivity: 0.7426564495530013 Specificity: 0.7664684354986276 Threshold: 0.14 Accuracy: 0.7601886156955204 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.602848719805479 AUROC: 0.8427443057013191 AUPRC: 0.6956593906116854 Sensitivity: 0.7478849407783418 Specificity: 0.7805907172995781 Threshold: 0.12 Accuracy: 0.7709885742672627 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.58it/s]
Loss: 0.5618436238233079 AUROC: 0.8315268765942331 AUPRC: 0.6773657443689854 Sensitivity: 0.7669220945083014 Specificity: 0.7470265324794144 Threshold: 0.11 Accuracy: 0.7522734927585045 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.57it/s]
Loss: 0.5774902794510126 AUROC: 0.8435010863848491 AUPRC: 0.7001979044701769 Sensitivity: 0.7800338409475466 Specificity: 0.7587904360056259 Threshold: 0.12 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.58it/s]
Loss: 0.5423089075595775 AUROC: 0.8333480852843884 AUPRC: 0.6806259338090793 Sensitivity: 0.7490421455938697 Specificity: 0.7666971637694419 Threshold: 0.12 Accuracy: 0.7620410912765241 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.56it/s]
Loss: 0.584593279287219 AUROC: 0.8443839971823008 AUPRC: 0.7016659736728726 Sensitivity: 0.7766497461928934 Specificity: 0.7587904360056259 Threshold: 0.11 Accuracy: 0.764033780427223 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.58it/s]
Loss: 0.5484770133774332 AUROC: 0.8353293745523294 AUPRC: 0.6836933738974432 Sensitivity: 0.7496807151979565 Specificity: 0.7669258920402562 Threshold: 0.11 Accuracy: 0.7623779050185248 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.57it/s]
Loss: 0.6068016141653061 AUROC: 0.8438425896178257 AUPRC: 0.7032448475121894 Sensitivity: 0.7495769881556683 Specificity: 0.7749648382559775 Threshold: 0.1 Accuracy: 0.767511177347243 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.567157581131509 AUROC: 0.8352808829904456 AUPRC: 0.6844713727338096 Sensitivity: 0.7598978288633461 Specificity: 0.7564043915827996 Threshold: 0.09 Accuracy: 0.7573256988885146 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.56it/s]
Loss: 0.5894291792064905 AUROC: 0.8446255482495282 AUPRC: 0.7028652099339788 Sensitivity: 0.7766497461928934 Specificity: 0.7559774964838256 Threshold: 0.1 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.58it/s]
Loss: 0.5522228346226064 AUROC: 0.8363954586191705 AUPRC: 0.6841022376487031 Sensitivity: 0.7535121328224776 Specificity: 0.7653247941445562 Threshold: 0.1 Accuracy: 0.7622094981475244 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.32it/s]
Loss: 0.5577664747834206 AUROC: 0.8430667704265338 AUPRC: 0.7003401161849515 Sensitivity: 0.7698815566835872 Specificity: 0.7616033755274262 Threshold: 0.12 Accuracy: 0.764033780427223 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.58it/s]
Loss: 0.5277804155299004 AUROC: 0.8347081859598817 AUPRC: 0.6822183068767055 Sensitivity: 0.7515964240102171 Specificity: 0.7680695333943275 Threshold: 0.12 Accuracy: 0.7637251599865275 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.55it/s]
Loss: 0.5527222771197557 AUROC: 0.8433987544056297 AUPRC: 0.6986281895488909 Sensitivity: 0.766497461928934 Specificity: 0.7665260196905767 Threshold: 0.13 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.59it/s]
Loss: 0.5190325743974523 AUROC: 0.8352045672040467 AUPRC: 0.6815824751906093 Sensitivity: 0.7509578544061303 Specificity: 0.7737877401646843 Threshold: 0.13 Accuracy: 0.7677669248905356 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.55it/s]
Loss: 0.5667037554085255 AUROC: 0.843542733120578 AUPRC: 0.6984996583899046 Sensitivity: 0.7631133671742809 Specificity: 0.7665260196905767 Threshold: 0.12 Accuracy: 0.7655240933929458 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.57it/s]
Loss: 0.532520204782486 AUROC: 0.8359578660908441 AUPRC: 0.6817055458257932 Sensitivity: 0.7477650063856961 Specificity: 0.7763037511436414 Threshold: 0.12 Accuracy: 0.7687773661165376 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.58it/s]
Loss: 0.5330205019563437 AUROC: 0.8429810971416061 AUPRC: 0.6952402438559193 Sensitivity: 0.7580372250423012 Specificity: 0.770042194092827 Threshold: 0.15 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.5049185705311755 AUROC: 0.8348740358650604 AUPRC: 0.6775837163390699 Sensitivity: 0.7624521072796935 Specificity: 0.7586916742909423 Threshold: 0.14 Accuracy: 0.7596833950825194 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.55it/s]
Loss: 0.5406437069177628 AUROC: 0.8422278861782813 AUPRC: 0.6958820784878188 Sensitivity: 0.7648054145516074 Specificity: 0.760196905766526 Threshold: 0.14 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.57it/s]
Loss: 0.509822280800089 AUROC: 0.834572789339802 AUPRC: 0.6782483465883506 Sensitivity: 0.7528735632183908 Specificity: 0.7676120768526989 Threshold: 0.14 Accuracy: 0.7637251599865275 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.56it/s]
Loss: 0.5405218414962292 AUROC: 0.8426586324163912 AUPRC: 0.6942438478039787 Sensitivity: 0.7631133671742809 Specificity: 0.7616033755274262 Threshold: 0.14 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.58it/s]
Loss: 0.510633629053197 AUROC: 0.8348108653815819 AUPRC: 0.6770787987296146 Sensitivity: 0.7701149425287356 Specificity: 0.7488563586459286 Threshold: 0.13 Accuracy: 0.754462782081509 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 0.5340249184519053 AUROC: 0.8426860002712986 AUPRC: 0.6920981792424613 Sensitivity: 0.7563451776649747 Specificity: 0.7679324894514767 Threshold: 0.15 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.5039110339068352 AUROC: 0.8347108150204658 AUPRC: 0.6744878465963001 Sensitivity: 0.7656449553001277 Specificity: 0.7573193046660567 Threshold: 0.14 Accuracy: 0.7595149882115191 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.5074657294899225 AUROC: 0.8417102767485085 AUPRC: 0.6887683125641609 Sensitivity: 0.7749576988155669 Specificity: 0.7531645569620253 Threshold: 0.18 Accuracy: 0.7595628415300546 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.48109231730724905 AUROC: 0.8337260857728095 AUPRC: 0.6715207877274341 Sensitivity: 0.7515964240102171 Specificity: 0.7687557182067704 Threshold: 0.18 Accuracy: 0.7642303805995284 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
Loss: 0.5027642734348774 AUROC: 0.84161746402317 AUPRC: 0.6852406381555297 Sensitivity: 0.766497461928934 Specificity: 0.7623066104078763 Threshold: 0.19 Accuracy: 0.7635370094386488 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.47593095010899483 AUROC: 0.8333911726661829 AUPRC: 0.6682940642201861 Sensitivity: 0.7656449553001277 Specificity: 0.7511436413540714 Threshold: 0.18 Accuracy: 0.7549680026945099 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 0.5247744806110859 AUROC: 0.8419506379090008 AUPRC: 0.686627575170089 Sensitivity: 0.751269035532995 Specificity: 0.7756680731364276 Threshold: 0.16 Accuracy: 0.7685047193243915 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.4962023915128505 AUROC: 0.833867470808664 AUPRC: 0.6702154521413405 Sensitivity: 0.7567049808429118 Specificity: 0.7621225983531564 Threshold: 0.15 Accuracy: 0.7606938363085214 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.5146491136401892 AUROC: 0.8417126565619787 AUPRC: 0.6852700005341095 Sensitivity: 0.7648054145516074 Specificity: 0.7651195499296765 Threshold: 0.17 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.4885922001397356 AUROC: 0.8337377704865165 AUPRC: 0.6679320295899249 Sensitivity: 0.7675606641123882 Specificity: 0.7543458371454712 Threshold: 0.16 Accuracy: 0.7578309195015157 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.5372134894132614 AUROC: 0.8419625369763519 AUPRC: 0.6848132477297619 Sensitivity: 0.7732656514382402 Specificity: 0.7566807313642757 Threshold: 0.14 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.5085675161569676 AUROC: 0.8343344942096401 AUPRC: 0.6686279592943756 Sensitivity: 0.7496807151979565 Specificity: 0.770128087831656 Threshold: 0.14 Accuracy: 0.7647356012125295 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 0.5509985275566578 AUROC: 0.8415448797123282 AUPRC: 0.684265399558694 Sensitivity: 0.7648054145516074 Specificity: 0.7644163150492265 Threshold: 0.13 Accuracy: 0.7645305514157973 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.50it/s]
Loss: 0.5207456638838383 AUROC: 0.8341679140098548 AUPRC: 0.6683467735064752 Sensitivity: 0.768837803320562 Specificity: 0.7506861848124429 Threshold: 0.12 Accuracy: 0.755473223307511 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.47it/s]
Loss: 0.5476177651435137 AUROC: 0.8411141334742183 AUPRC: 0.67912770412633 Sensitivity: 0.7614213197969543 Specificity: 0.7672292545710268 Threshold: 0.14 Accuracy: 0.7655240933929458 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.5158806554180511 AUROC: 0.8338474607364408 AUPRC: 0.6637568235406238 Sensitivity: 0.7630906768837803 Specificity: 0.755946935041171 Threshold: 0.13 Accuracy: 0.7578309195015157 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.5182623229920864 AUROC: 0.8398183250396833 AUPRC: 0.678578301820897 Sensitivity: 0.7715736040609137 Specificity: 0.7573839662447257 Threshold: 0.16 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.49079173105828305 AUROC: 0.8328796743236595 AUPRC: 0.6646543438173373 Sensitivity: 0.7503192848020435 Specificity: 0.7705855443732845 Threshold: 0.16 Accuracy: 0.7652408218255304 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.5396119859069586 AUROC: 0.8399182772054327 AUPRC: 0.6783211460553995 Sensitivity: 0.7631133671742809 Specificity: 0.7644163150492265 Threshold: 0.14 Accuracy: 0.764033780427223 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.47it/s]
Loss: 0.5090579621969386 AUROC: 0.8336520338996914 AUPRC: 0.6653320344219272 Sensitivity: 0.7637292464878672 Specificity: 0.7602927721866423 Threshold: 0.13 Accuracy: 0.7611990569215223 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.504480505362153 AUROC: 0.8391484075478165 AUPRC: 0.673107448047415 Sensitivity: 0.754653130287648 Specificity: 0.770745428973277 Threshold: 0.18 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.4784105058680189 AUROC: 0.8318885184834643 AUPRC: 0.6603377212164538 Sensitivity: 0.756066411238825 Specificity: 0.7648673376029277 Threshold: 0.17 Accuracy: 0.762546311889525 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.49821336567401886 AUROC: 0.8366638822849064 AUPRC: 0.6642833226273098 Sensitivity: 0.754653130287648 Specificity: 0.770042194092827 Threshold: 0.2 Accuracy: 0.7655240933929458 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.47165350489159846 AUROC: 0.8300242954409753 AUPRC: 0.6537794720597042 Sensitivity: 0.7496807151979565 Specificity: 0.7618938700823422 Threshold: 0.19 Accuracy: 0.7586729538565173 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.4973024893552065 AUROC: 0.83745873998396 AUPRC: 0.669748616927376 Sensitivity: 0.7631133671742809 Specificity: 0.7658227848101266 Threshold: 0.19 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.4696605884014292 AUROC: 0.8312416235208613 AUPRC: 0.6591411963255533 Sensitivity: 0.7579821200510856 Specificity: 0.757548032936871 Threshold: 0.18 Accuracy: 0.7576625126305153 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.5150814540684223 AUROC: 0.8365793989067136 AUPRC: 0.6635666825127221 Sensitivity: 0.7698815566835872 Specificity: 0.7531645569620253 Threshold: 0.16 Accuracy: 0.7580725285643318 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.48689321000525293 AUROC: 0.8311780878900796 AUPRC: 0.6558675257481387 Sensitivity: 0.7694763729246488 Specificity: 0.7483989021043 Threshold: 0.15 Accuracy: 0.7539575614685079 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.4860228952020407 AUROC: 0.8333963983902943 AUPRC: 0.6552751678970392 Sensitivity: 0.7614213197969543 Specificity: 0.7679324894514767 Threshold: 0.22 Accuracy: 0.7660208643815202 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.4610270899026952 AUROC: 0.8277600900424038 AUPRC: 0.6485261513779451 Sensitivity: 0.7452107279693486 Specificity: 0.7623513266239708 Threshold: 0.21 Accuracy: 0.7578309195015157 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.555122883990407 AUROC: 0.8370375129997312 AUPRC: 0.6652478402205896 Sensitivity: 0.7681895093062606 Specificity: 0.760196905766526 Threshold: 0.12 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.524343766747637 AUROC: 0.8310659146384924 AUPRC: 0.6585312121178359 Sensitivity: 0.768837803320562 Specificity: 0.7483989021043 Threshold: 0.11 Accuracy: 0.7537891545975076 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.44it/s]
Loss: 0.5728144589811563 AUROC: 0.8363366579327512 AUPRC: 0.6656607340965686 Sensitivity: 0.7580372250423012 Specificity: 0.7623066104078763 Threshold: 0.11 Accuracy: 0.7610531544957775 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.540153332213138 AUROC: 0.8306459952396475 AUPRC: 0.6595394018226933 Sensitivity: 0.7618135376756067 Specificity: 0.7548032936870998 Threshold: 0.1 Accuracy: 0.7566520714045133 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 0.506429536268115 AUROC: 0.8315669167850623 AUPRC: 0.6503869447956923 Sensitivity: 0.7580372250423012 Specificity: 0.7644163150492265 Threshold: 0.18 Accuracy: 0.7625434674615003 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 0.47887313492754674 AUROC: 0.8266559576265543 AUPRC: 0.6454467646172034 Sensitivity: 0.7541507024265645 Specificity: 0.7561756633119854 Threshold: 0.17 Accuracy: 0.7556416301785113 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.5103804506361485 AUROC: 0.8290972653563413 AUPRC: 0.6420941839035903 Sensitivity: 0.7563451776649747 Specificity: 0.7644163150492265 Threshold: 0.18 Accuracy: 0.762046696472926 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.48100158255150977 AUROC: 0.8248138625106478 AUPRC: 0.638649571815312 Sensitivity: 0.7484035759897829 Specificity: 0.757548032936871 Threshold: 0.17 Accuracy: 0.7551364095655103 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5304349008947611 AUROC: 0.8322029219349787 AUPRC: 0.6509523183026548 Sensitivity: 0.7495769881556683 Specificity: 0.770042194092827 Threshold: 0.15 Accuracy: 0.764033780427223 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.5010610929829009 AUROC: 0.8266959777710007 AUPRC: 0.6449995111996677 Sensitivity: 0.7452107279693486 Specificity: 0.7639524245196706 Threshold: 0.14 Accuracy: 0.759009767598518 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5052582994103432 AUROC: 0.8283773717815998 AUPRC: 0.6443270120483939 Sensitivity: 0.7648054145516074 Specificity: 0.7538677918424754 Threshold: 0.18 Accuracy: 0.7570789865871833 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.4764780475104109 AUROC: 0.8235400826576647 AUPRC: 0.638154860799814 Sensitivity: 0.7535121328224776 Specificity: 0.7445105215004575 Threshold: 0.17 Accuracy: 0.7468844728864937 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5126123838126659 AUROC: 0.8282357728801217 AUPRC: 0.640550819835904 Sensitivity: 0.7529610829103215 Specificity: 0.7616033755274262 Threshold: 0.17 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.4841412071217882 AUROC: 0.8232155397344533 AUPRC: 0.6360646402469321 Sensitivity: 0.7432950191570882 Specificity: 0.7541171088746569 Threshold: 0.16 Accuracy: 0.7512630515325025 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5099312514066696 AUROC: 0.8250492026434968 AUPRC: 0.6355958015938763 Sensitivity: 0.7529610829103215 Specificity: 0.760196905766526 Threshold: 0.18 Accuracy: 0.7580725285643318 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.4800201343729141 AUROC: 0.8204640817743004 AUPRC: 0.6305929487162063 Sensitivity: 0.7407407407407407 Specificity: 0.7534309240622141 Threshold: 0.17 Accuracy: 0.7500842034355002 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.5244469940662384 AUROC: 0.8237986106648961 AUPRC: 0.6349141309295416 Sensitivity: 0.7529610829103215 Specificity: 0.7538677918424754 Threshold: 0.16 Accuracy: 0.7536015896671634 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.4916925972446482 AUROC: 0.8203995237310693 AUPRC: 0.6286846783645803 Sensitivity: 0.7509578544061303 Specificity: 0.7431381518755719 Threshold: 0.15 Accuracy: 0.7452004041764904 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.48205018043518066 AUROC: 0.823896183017175 AUPRC: 0.6330752455311649 Sensitivity: 0.7529610829103215 Specificity: 0.7616033755274262 Threshold: 0.24 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.4546983333978247 AUROC: 0.8189252049790903 AUPRC: 0.6276385490588017 Sensitivity: 0.7490421455938697 Specificity: 0.7397072278133577 Threshold: 0.22 Accuracy: 0.7421690804984843 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.49it/s]
Loss: 0.5214580055326223 AUROC: 0.8250289742289999 AUPRC: 0.635494529080868 Sensitivity: 0.7580372250423012 Specificity: 0.7587904360056259 Threshold: 0.16 Accuracy: 0.7585692995529061 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.49202376540671006 AUROC: 0.8194136260120423 AUPRC: 0.6285687458499557 Sensitivity: 0.7452107279693486 Specificity: 0.7472552607502287 Threshold: 0.15 Accuracy: 0.7467160660154935 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.4910655487328768 AUROC: 0.8210475462933216 AUPRC: 0.6261055839755668 Sensitivity: 0.7461928934010152 Specificity: 0.7616033755274262 Threshold: 0.22 Accuracy: 0.7570789865871833 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.46391822651345677 AUROC: 0.8155788490323305 AUPRC: 0.6196883006948559 Sensitivity: 0.7464878671775224 Specificity: 0.7408508691674291 Threshold: 0.2 Accuracy: 0.7423374873694847 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0039.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.5084156692028046 AUROC: 0.8240377819186532 AUPRC: 0.633305408680411 Sensitivity: 0.7529610829103215 Specificity: 0.7651195499296765 Threshold: 0.18 Accuracy: 0.7615499254843517 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.48043045306459387 AUROC: 0.818334542701202 AUPRC: 0.6269777993836528 Sensitivity: 0.7541507024265645 Specificity: 0.7387923147301007 Threshold: 0.16 Accuracy: 0.7428427079824856 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0040.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.5101432502269745 AUROC: 0.8237795721571344 AUPRC: 0.6358937025692513 Sensitivity: 0.7597292724196277 Specificity: 0.7447257383966245 Threshold: 0.17 Accuracy: 0.7491306507699951 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.48066261600940785 AUROC: 0.8178410096060031 AUPRC: 0.6279375550273513 Sensitivity: 0.7509578544061303 Specificity: 0.7435956084172004 Threshold: 0.16 Accuracy: 0.745537217918491 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0041.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5223022401332855 AUROC: 0.8222279337745508 AUPRC: 0.6291481493343869 Sensitivity: 0.7461928934010152 Specificity: 0.7559774964838256 Threshold: 0.16 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.45it/s]
Loss: 0.4923860047091829 AUROC: 0.816084797135843 AUPRC: 0.6219455877188904 Sensitivity: 0.7426564495530013 Specificity: 0.75 Threshold: 0.15 Accuracy: 0.7480633209834961 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0042.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 0.5194917675107718 AUROC: 0.8196577352267129 AUPRC: 0.6274198938546462 Sensitivity: 0.7648054145516074 Specificity: 0.7419127988748242 Threshold: 0.16 Accuracy: 0.7486338797814208 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.4891206206793481 AUROC: 0.8146865750818807 AUPRC: 0.620530198415634 Sensitivity: 0.7547892720306514 Specificity: 0.734903934126258 Threshold: 0.15 Accuracy: 0.7401481980464802 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0043.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5538970995694399 AUROC: 0.8225158912044475 AUPRC: 0.6324152353028798 Sensitivity: 0.739424703891709 Specificity: 0.7630098452883263 Threshold: 0.13 Accuracy: 0.7560854446100348 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.5178385221577705 AUROC: 0.8175244999234651 AUPRC: 0.6260852937603659 Sensitivity: 0.7458492975734355 Specificity: 0.7513723696248856 Threshold: 0.12 Accuracy: 0.7499157965644998 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0044.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5247442424297333 AUROC: 0.8201301282005518 AUPRC: 0.6283489156685629 Sensitivity: 0.7495769881556683 Specificity: 0.7545710267229254 Threshold: 0.16 Accuracy: 0.7531048186785891 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.4912497515374042 AUROC: 0.8158160487205823 AUPRC: 0.6237080378943033 Sensitivity: 0.7413793103448276 Specificity: 0.7536596523330283 Threshold: 0.15 Accuracy: 0.7504210171775009 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0045.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5255499687045813 AUROC: 0.8142222412607301 AUPRC: 0.6157237721361577 Sensitivity: 0.7411167512690355 Specificity: 0.7468354430379747 Threshold: 0.17 Accuracy: 0.7451564828614009 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.49156803241435515 AUROC: 0.8095404080769415 AUPRC: 0.6105778847397814 Sensitivity: 0.7318007662835249 Specificity: 0.7511436413540714 Threshold: 0.16 Accuracy: 0.7460424385314921 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0046.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.5242548193782568 AUROC: 0.8212783881999328 AUPRC: 0.629265968874731 Sensitivity: 0.7631133671742809 Specificity: 0.7433192686357243 Threshold: 0.15 Accuracy: 0.7491306507699951 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.49187057132416584 AUROC: 0.8170534599021522 AUPRC: 0.6270373376076233 Sensitivity: 0.7477650063856961 Specificity: 0.7447392497712717 Threshold: 0.14 Accuracy: 0.745537217918491 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0047.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.52it/s]
Loss: 0.504784444347024 AUROC: 0.8162177148555096 AUPRC: 0.6200110005386212 Sensitivity: 0.7563451776649747 Specificity: 0.7447257383966245 Threshold: 0.19 Accuracy: 0.7481371087928465 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.473761167297972 AUROC: 0.8117453865829105 AUPRC: 0.6152815212244587 Sensitivity: 0.7343550446998723 Specificity: 0.7504574565416285 Threshold: 0.18 Accuracy: 0.7462108454024924 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0048.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5258549749851227 AUROC: 0.8128883558106716 AUPRC: 0.6136510325256833 Sensitivity: 0.7343485617597293 Specificity: 0.7517580872011251 Threshold: 0.17 Accuracy: 0.7466467958271237 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.56it/s]
Loss: 0.4933394878468615 AUROC: 0.8083572577846484 AUPRC: 0.6097793286356433 Sensitivity: 0.7401021711366539 Specificity: 0.7342177493138152 Threshold: 0.15 Accuracy: 0.7357696194004716 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0049.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5171806942671537 AUROC: 0.8103276765167147 AUPRC: 0.6114454009320143 Sensitivity: 0.7360406091370558 Specificity: 0.7426160337552743 Threshold: 0.18 Accuracy: 0.7406855439642325 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.48375200781416383 AUROC: 0.8065383860372345 AUPRC: 0.6072437628749981 Sensitivity: 0.7496807151979565 Specificity: 0.7291857273559011 Threshold: 0.16 Accuracy: 0.7345907713034692 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0050.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:07<00:00, 2.27it/s]
Loss: 0.5274684373289347 AUROC: 0.8137760262350637 AUPRC: 0.6177390372571877 Sensitivity: 0.7377326565143824 Specificity: 0.7545710267229254 Threshold: 0.16 Accuracy: 0.7496274217585693 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.4931253299434134 AUROC: 0.8106239461848825 AUPRC: 0.6168177154132323 Sensitivity: 0.7515964240102171 Specificity: 0.7323879231473011 Threshold: 0.14 Accuracy: 0.737453688110475 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0051.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.48it/s]
Loss: 0.5755063854157925 AUROC: 0.8184868669993645 AUPRC: 0.62516613177793 Sensitivity: 0.7428087986463621 Specificity: 0.7475386779184248 Threshold: 0.11 Accuracy: 0.7461500248385494 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.52it/s]
Loss: 0.5363859756195799 AUROC: 0.814248982553554 AUPRC: 0.6239360909348971 Sensitivity: 0.7503192848020435 Specificity: 0.7401646843549863 Threshold: 0.1 Accuracy: 0.7428427079824856 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0052.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.50it/s]
Loss: 0.49694568663835526 AUROC: 0.8152431812394544 AUPRC: 0.6174498373579633 Sensitivity: 0.7495769881556683 Specificity: 0.7362869198312236 Threshold: 0.2 Accuracy: 0.7401887729756582 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.55it/s]
Loss: 0.46541004485272347 AUROC: 0.8108732687636053 AUPRC: 0.6160013854446265 Sensitivity: 0.7407407407407407 Specificity: 0.739935956084172 Threshold: 0.19 Accuracy: 0.7401481980464802 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0053.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.51it/s]
Loss: 0.5374348815530539 AUROC: 0.8113212486405316 AUPRC: 0.6104487766961042 Sensitivity: 0.7478849407783418 Specificity: 0.7320675105485233 Threshold: 0.14 Accuracy: 0.7367113760556383 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.5008699887610496 AUROC: 0.8081608085354498 AUPRC: 0.610764069545462 Sensitivity: 0.7298850574712644 Specificity: 0.7477127172918573 Threshold: 0.14 Accuracy: 0.743011114853486 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0054.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.540806507691741 AUROC: 0.8123421886192561 AUPRC: 0.6128478212211692 Sensitivity: 0.7411167512690355 Specificity: 0.7383966244725738 Threshold: 0.14 Accuracy: 0.7391952309985097 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:19<00:00, 2.43it/s]
Loss: 0.5032344520726102 AUROC: 0.8088369152823202 AUPRC: 0.6133429825397978 Sensitivity: 0.7394636015325671 Specificity: 0.7353613906678865 Threshold: 0.13 Accuracy: 0.7364432468844729 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0055.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.46it/s]
Loss: 0.5577088929712772 AUROC: 0.8105466193559748 AUPRC: 0.6134663055012833 Sensitivity: 0.7292724196277496 Specificity: 0.749648382559775 Threshold: 0.13 Accuracy: 0.7436661698956781 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.49it/s]
Loss: 0.5181910341724436 AUROC: 0.8087522741374051 AUPRC: 0.6157730147941767 Sensitivity: 0.7305236270753512 Specificity: 0.744053064958829 Threshold: 0.12 Accuracy: 0.7404850117884809 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0056.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16/16 [00:06<00:00, 2.53it/s]
Loss: 0.5442991890013218 AUROC: 0.8037927087274899 AUPRC: 0.6006607281450171 Sensitivity: 0.7292724196277496 Specificity: 0.7433192686357243 Threshold: 0.15 Accuracy: 0.7391952309985097 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.54it/s]
Loss: 0.5057525324060562 AUROC: 0.8021553038668222 AUPRC: 0.6006570882358487 Sensitivity: 0.7260536398467433 Specificity: 0.7381061299176578 Threshold: 0.14 Accuracy: 0.7349275850454698 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 36, 0.4792 Epoch with best model Test AUROC: 5, 0.8364 Epoch with best model Test Accuracy: 8, 0.7688
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 36, 0.4792
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0036.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.4546983333978247 AUROC: 0.8189252049790903 AUPRC: 0.6276385490588017 Sensitivity: 0.7490421455938697 Specificity: 0.7397072278133577 Threshold: 0.22 Accuracy: 0.7421690804984843
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.8189252049790903
best_model_val_test_auprc: 0.6276385490588017
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 5, 0.8364
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_128_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_8cb83d71_0005.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 47/47 [00:18<00:00, 2.53it/s]
Loss: 0.5522228346226064 AUROC: 0.8363954586191705 AUPRC: 0.6841022376487031 Sensitivity: 0.7535121328224776 Specificity: 0.7653247941445562 Threshold: 0.1 Accuracy: 0.7622094981475244
best_model_auroc_test_auroc: 0.8363954586191705
best_model_auroc_test_auprc: 0.6841022376487031 Total Processing Time: 4525.5950 sec
RUN_ME = True
if MULTI_RUN and RUN_ME:
run_experiment(
experimentNamePrefix=None,
useAbp=True,
useEeg=False,
useEcg=False,
nResiduals=12,
skip_connection=False,
batch_size=64,
learning_rate=1e-4,
weight_decay=0.0,
balance_labels=True,
#pos_weight=2.0,
pos_weight=None,
max_epochs=200,
patience=20,
device=device
)
Experiment Setup
name: ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b
prediction_window: 003
max_cases: _ALL
use_abp: True
use_eeg: False
use_ecg: False
n_residuals: 12
skip_connection: False
batch_size: 64
learning_rate: 0.0001
weight_decay: 0.0
balance_labels: True
pos_weight: 4.0
max_epochs: 200
patience: 20
device: mps
Model Architecture
HypotensionCNN(
(abpResiduals): Sequential(
(0): ResidualBlock(
(bn1): BatchNorm1d(1, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(1, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(1): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(2): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(3): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(4): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 2, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(5): ResidualBlock(
(bn1): BatchNorm1d(2, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
(residualConv): Conv1d(2, 4, kernel_size=(15,), stride=(1,), padding=(7,), bias=False)
)
(6): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(7): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(8): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=1, dilation=1, ceil_mode=False)
)
(9): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 4, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
(10): ResidualBlock(
(bn1): BatchNorm1d(4, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(4, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(downsample): MaxPool1d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)
)
(11): ResidualBlock(
(bn1): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(relu): ReLU()
(dropout): Dropout(p=0.5, inplace=False)
(conv1): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(bn2): BatchNorm1d(6, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)
(conv2): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
(residualConv): Conv1d(6, 6, kernel_size=(7,), stride=(1,), padding=(3,), bias=False)
)
)
(abpFc): Linear(in_features=2814, out_features=32, bias=True)
(fullLinear1): Linear(in_features=32, out_features=16, bias=True)
(fullLinear2): Linear(in_features=16, out_features=1, bias=True)
(sigmoid): Sigmoid()
)
Training Loop
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.72it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.60it/s]
[2024-05-03 13:14:08.950055] Completed epoch 0 with training loss 0.97923893, validation loss 1.49352431 Validation loss improved to 1.49352431. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.81it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
[2024-05-03 13:15:03.904259] Completed epoch 1 with training loss 0.91000813, validation loss 1.47077739 Validation loss improved to 1.47077739. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.82it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.53it/s]
[2024-05-03 13:15:59.191996] Completed epoch 2 with training loss 0.90054578, validation loss 1.62533975 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.80it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.65it/s]
[2024-05-03 13:16:54.571638] Completed epoch 3 with training loss 0.89497119, validation loss 1.39922380 Validation loss improved to 1.39922380. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
[2024-05-03 13:17:48.474853] Completed epoch 4 with training loss 0.88532209, validation loss 1.66903925 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.84it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.82it/s]
[2024-05-03 13:18:43.080274] Completed epoch 5 with training loss 0.88373053, validation loss 1.68939793 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.84it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.85it/s]
[2024-05-03 13:19:37.622493] Completed epoch 6 with training loss 0.88075405, validation loss 1.27503598 Validation loss improved to 1.27503598. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.83it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
[2024-05-03 13:20:32.493352] Completed epoch 7 with training loss 0.87701946, validation loss 1.44112730 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.81it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
[2024-05-03 13:21:27.537165] Completed epoch 8 with training loss 0.87544018, validation loss 1.67856264 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:49<00:00, 3.71it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
[2024-05-03 13:22:23.802512] Completed epoch 9 with training loss 0.86956936, validation loss 1.34997737 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.82it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
[2024-05-03 13:23:18.758197] Completed epoch 10 with training loss 0.87413210, validation loss 1.33530986 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.77it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
[2024-05-03 13:24:14.295473] Completed epoch 11 with training loss 0.85939217, validation loss 1.35490429 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.80it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
[2024-05-03 13:25:09.511177] Completed epoch 12 with training loss 0.85955942, validation loss 1.24651444 Validation loss improved to 1.24651444. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.77it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.64it/s]
[2024-05-03 13:26:05.281654] Completed epoch 13 with training loss 0.86272508, validation loss 1.17153907 Validation loss improved to 1.17153907. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.81it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.72it/s]
[2024-05-03 13:27:00.481622] Completed epoch 14 with training loss 0.85527289, validation loss 1.26286292 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.83it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
[2024-05-03 13:27:55.128922] Completed epoch 15 with training loss 0.85579193, validation loss 1.29829144 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.77it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.71it/s]
[2024-05-03 13:28:50.810446] Completed epoch 16 with training loss 0.85479993, validation loss 1.25177288 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.77it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.89it/s]
[2024-05-03 13:29:46.193494] Completed epoch 17 with training loss 0.84856564, validation loss 1.27535415 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.80it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
[2024-05-03 13:30:41.229194] Completed epoch 18 with training loss 0.84413320, validation loss 1.27998829 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.79it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 13:31:36.393589] Completed epoch 19 with training loss 0.84553081, validation loss 1.25094688 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
[2024-05-03 13:32:30.938514] Completed epoch 20 with training loss 0.83780521, validation loss 1.35003042 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:48<00:00, 3.80it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 13:33:25.909326] Completed epoch 21 with training loss 0.84039819, validation loss 1.26867032 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 13:34:20.124587] Completed epoch 22 with training loss 0.83759958, validation loss 1.20621872 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.85it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 13:35:14.504470] Completed epoch 23 with training loss 0.83263779, validation loss 1.18396258 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
[2024-05-03 13:36:08.796227] Completed epoch 24 with training loss 0.82197654, validation loss 1.07491398 Validation loss improved to 1.07491398. Model saved.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.86it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 13:37:03.058962] Completed epoch 25 with training loss 0.82918745, validation loss 1.19342494 No improvement in validation loss. 1 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 13:37:57.182492] Completed epoch 26 with training loss 0.82610536, validation loss 1.19009328 No improvement in validation loss. 2 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.84it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 13:38:51.688095] Completed epoch 27 with training loss 0.82063043, validation loss 1.34440255 No improvement in validation loss. 3 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.89it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 13:39:45.591330] Completed epoch 28 with training loss 0.82370806, validation loss 1.29997480 No improvement in validation loss. 4 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.87it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 13:40:39.648386] Completed epoch 29 with training loss 0.82182318, validation loss 1.11946261 No improvement in validation loss. 5 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.88it/s]
[2024-05-03 13:41:33.458997] Completed epoch 30 with training loss 0.81617010, validation loss 1.14300942 No improvement in validation loss. 6 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.88it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.92it/s]
[2024-05-03 13:42:27.419083] Completed epoch 31 with training loss 0.81341666, validation loss 1.28463197 No improvement in validation loss. 7 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 13:43:21.217302] Completed epoch 32 with training loss 0.81628424, validation loss 1.22142076 No improvement in validation loss. 8 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.93it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 13:44:14.564075] Completed epoch 33 with training loss 0.80873978, validation loss 1.23007786 No improvement in validation loss. 9 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
[2024-05-03 13:45:08.009591] Completed epoch 34 with training loss 0.80997187, validation loss 1.16039026 No improvement in validation loss. 10 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.91it/s]
[2024-05-03 13:46:01.541811] Completed epoch 35 with training loss 0.80266321, validation loss 1.17455649 No improvement in validation loss. 11 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.93it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
[2024-05-03 13:46:54.808610] Completed epoch 36 with training loss 0.80244279, validation loss 1.08160281 No improvement in validation loss. 12 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
[2024-05-03 13:47:48.305537] Completed epoch 37 with training loss 0.80316812, validation loss 1.21999002 No improvement in validation loss. 13 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
[2024-05-03 13:48:41.859402] Completed epoch 38 with training loss 0.80060762, validation loss 1.16809368 No improvement in validation loss. 14 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.94it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.93it/s]
[2024-05-03 13:49:35.100303] Completed epoch 39 with training loss 0.79160196, validation loss 1.16658890 No improvement in validation loss. 15 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.95it/s]
[2024-05-03 13:50:28.541575] Completed epoch 40 with training loss 0.79580665, validation loss 1.13447750 No improvement in validation loss. 16 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
[2024-05-03 13:51:21.972621] Completed epoch 41 with training loss 0.79346192, validation loss 1.25097096 No improvement in validation loss. 17 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.96it/s]
[2024-05-03 13:52:15.494402] Completed epoch 42 with training loss 0.79520667, validation loss 1.15656114 No improvement in validation loss. 18 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:46<00:00, 3.92it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.90it/s]
[2024-05-03 13:53:08.960299] Completed epoch 43 with training loss 0.79330802, validation loss 1.22314882 No improvement in validation loss. 19 epochs without improvement.
100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 184/184 [00:47<00:00, 3.89it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
[2024-05-03 13:54:03.013459] Completed epoch 44 with training loss 0.79248136, validation loss 1.14069557 No improvement in validation loss. 20 epochs without improvement. Early stopping due to no improvement in validation loss. Plot Validation and Loss Values from Training Epoch with best Validation Loss: 24, 1.075
Generate AUROC/AUPRC for Each Intermediate Model Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0000.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:05<00:00, 5.50it/s]
Loss: 1.4882378783077002 AUROC: 0.8420113231524913 AUPRC: 0.6836242772799493 Sensitivity: 0.032148900169204735 Specificity: 0.9992967651195499 Threshold: 0.0 Accuracy: 0.7153502235469449 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.72it/s]
Loss: 1.3994177560652457 AUROC: 0.8275160986143097 AUPRC: 0.6598902009509341 Sensitivity: 0.021711366538952746 Specificity: 0.9988563586459286 Threshold: 0.0 Accuracy: 0.7411586392724823 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0001.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 1.4726210348308086 AUROC: 0.8443494898869827 AUPRC: 0.6944831342845115 Sensitivity: 0.03553299492385787 Specificity: 0.9992967651195499 Threshold: 0.0 Accuracy: 0.7163437655240934 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 1.3889378415000053 AUROC: 0.8326210039739712 AUPRC: 0.6738280708225922 Sensitivity: 0.026181353767560665 Specificity: 0.9988563586459286 Threshold: 0.0 Accuracy: 0.7423374873694847 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0002.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 1.6168909296393394 AUROC: 0.8439211234623429 AUPRC: 0.697648932738057 Sensitivity: 0.02707275803722504 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7143566815697964 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.81it/s]
Loss: 1.5322492164309307 AUROC: 0.833882880024865 AUPRC: 0.678127820908462 Sensitivity: 0.013409961685823755 Specificity: 0.9995425434583715 Threshold: 0.0 Accuracy: 0.7394745705624789 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0003.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 1.4112230241298676 AUROC: 0.8438199813898587 AUPRC: 0.6937984618740102 Sensitivity: 0.06598984771573604 Specificity: 0.9957805907172996 Threshold: 0.0 Accuracy: 0.7228017883755589 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.83it/s]
Loss: 1.3326769025735958 AUROC: 0.83384629226507 AUPRC: 0.6745398530849646 Sensitivity: 0.04725415070242656 Specificity: 0.997483989021043 Threshold: 0.0 Accuracy: 0.7468844728864937 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0004.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 1.682824656367302 AUROC: 0.8428918541364728 AUPRC: 0.6963371443271099 Sensitivity: 0.030456852791878174 Specificity: 1.0 Threshold: 0.0 Accuracy: 0.7153502235469449 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 1.5959413746992748 AUROC: 0.8336071938108408 AUPRC: 0.6765129467625677 Sensitivity: 0.018518518518518517 Specificity: 0.9993138151875571 Threshold: 0.0 Accuracy: 0.7406534186594813 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0005.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.83it/s]
Loss: 1.6697893664240837 AUROC: 0.8428632963748303 AUPRC: 0.6971076085735661 Sensitivity: 0.032148900169204735 Specificity: 0.9992967651195499 Threshold: 0.0 Accuracy: 0.7153502235469449 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.82it/s]
Loss: 1.595503447517272 AUROC: 0.8339755544104536 AUPRC: 0.6765470234754296 Sensitivity: 0.019157088122605363 Specificity: 0.9990850869167429 Threshold: 0.0 Accuracy: 0.7406534186594813 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0006.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.84it/s]
Loss: 1.2926385775208473 AUROC: 0.8394970502212037 AUPRC: 0.6890005598442024 Sensitivity: 0.3164128595600677 Specificity: 0.9655414908579466 Threshold: 0.0 Accuracy: 0.7749627421758569 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.53it/s]
Loss: 1.2234984069101271 AUROC: 0.8302133687146463 AUPRC: 0.6683681319303061 Sensitivity: 0.24010217113665389 Specificity: 0.9810155535224153 Threshold: 0.0 Accuracy: 0.7856180532165712 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0007.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 1.4320572949945927 AUROC: 0.8403787711119204 AUPRC: 0.6872210511983247 Sensitivity: 0.08121827411167512 Specificity: 0.9915611814345991 Threshold: 0.0 Accuracy: 0.7242921013412816 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.68it/s]
Loss: 1.371626627060675 AUROC: 0.8314626106688447 AUPRC: 0.6690651623287767 Sensitivity: 0.06960408684546615 Specificity: 0.9972552607502287 Threshold: 0.0 Accuracy: 0.7526103065005052 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0008.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.74it/s]
Loss: 1.6671173013746738 AUROC: 0.8406917165832543 AUPRC: 0.6893592980656171 Sensitivity: 0.030456852791878174 Specificity: 0.9992967651195499 Threshold: 0.0 Accuracy: 0.7148534525583706 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.61it/s]
Loss: 1.5905051439680078 AUROC: 0.8319202132693946 AUPRC: 0.6702978093430528 Sensitivity: 0.019157088122605363 Specificity: 0.9990850869167429 Threshold: 0.0 Accuracy: 0.7406534186594813 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0009.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.35it/s]
Loss: 1.350535586476326 AUROC: 0.8375384637352123 AUPRC: 0.6775655347476236 Sensitivity: 0.16412859560067683 Specificity: 0.9810126582278481 Threshold: 0.0 Accuracy: 0.7411823149528067 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.55it/s]
Loss: 1.2822378655915618 AUROC: 0.8289113994898454 AUPRC: 0.6553092276961763 Sensitivity: 0.14431673052362706 Specificity: 0.9906221408966148 Threshold: 0.0 Accuracy: 0.7674301111485349 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0010.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.55it/s]
Loss: 1.3328465837985277 AUROC: 0.8374884876523379 AUPRC: 0.6790075758073131 Sensitivity: 0.2436548223350254 Specificity: 0.9732770745428974 Threshold: 0.0 Accuracy: 0.7590660705414803 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.56it/s]
Loss: 1.279789715364415 AUROC: 0.829083018722417 AUPRC: 0.6579715302401783 Sensitivity: 0.20242656449553 Specificity: 0.9851326623970723 Threshold: 0.0 Accuracy: 0.7787133715055574 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0011.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.67it/s]
Loss: 1.3636581115424633 AUROC: 0.8368518875490539 AUPRC: 0.6780464708469762 Sensitivity: 0.20304568527918782 Specificity: 0.9767932489451476 Threshold: 0.0 Accuracy: 0.7496274217585693 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.62it/s]
Loss: 1.3106837256621289 AUROC: 0.8283446178455958 AUPRC: 0.6563503955964257 Sensitivity: 0.1685823754789272 Specificity: 0.987419945105215 Threshold: 0.0 Accuracy: 0.771471876052543 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0012.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.50it/s]
Loss: 1.2517575845122337 AUROC: 0.8339032986594511 AUPRC: 0.6666085192382352 Sensitivity: 0.38747884940778343 Specificity: 0.940225035161744 Threshold: 0.0 Accuracy: 0.7779433681073026 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.65it/s]
Loss: 1.2083589085327682 AUROC: 0.8252381636771327 AUPRC: 0.6453753394056378 Sensitivity: 0.3243933588761175 Specificity: 0.9606587374199451 Threshold: 0.0 Accuracy: 0.7928595486695857 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0013.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.30it/s]
Loss: 1.178162794560194 AUROC: 0.8324171051472985 AUPRC: 0.660594573216441 Sensitivity: 0.5194585448392555 Specificity: 0.8980309423347398 Threshold: 0.0 Accuracy: 0.7868852459016393 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.54it/s]
Loss: 1.136761588114564 AUROC: 0.8238209539633965 AUPRC: 0.6397094726198259 Sensitivity: 0.4776500638569604 Specificity: 0.9197163769441903 Threshold: 0.0 Accuracy: 0.8031323678006063 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0014.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.64it/s]
Loss: 1.253557488322258 AUROC: 0.8338223850014634 AUPRC: 0.6610792496891803 Sensitivity: 0.377326565143824 Specificity: 0.9409282700421941 Threshold: 0.0 Accuracy: 0.7754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.66it/s]
Loss: 1.2149887485529787 AUROC: 0.8257095688457489 AUPRC: 0.6422312826020078 Sensitivity: 0.3167305236270754 Specificity: 0.962259835315645 Threshold: 0.0 Accuracy: 0.792017514314584 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0015.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.65it/s]
Loss: 1.297668058425188 AUROC: 0.8344720740788336 AUPRC: 0.6600500702650749 Sensitivity: 0.3147208121827411 Specificity: 0.9521800281293952 Threshold: 0.0 Accuracy: 0.7650273224043715 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.68it/s]
Loss: 1.2583869147685267 AUROC: 0.8255425504691996 AUPRC: 0.6408132287820899 Sensitivity: 0.24840357598978288 Specificity: 0.9720951509606587 Threshold: 0.0 Accuracy: 0.7812394745705625 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0016.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 1.2478416562080383 AUROC: 0.835360934409961 AUPRC: 0.6613655466229689 Sensitivity: 0.4077834179357022 Specificity: 0.9353023909985936 Threshold: 0.0 Accuracy: 0.7804272230501739 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 1.2157346003799028 AUROC: 0.825890024643061 AUPRC: 0.6427905304646993 Sensitivity: 0.34610472541507026 Specificity: 0.9560841720036597 Threshold: 0.0 Accuracy: 0.7952172448635905 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0017.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.54it/s]
Loss: 1.2771084122359753 AUROC: 0.8324789802975243 AUPRC: 0.65012772072203 Sensitivity: 0.3197969543147208 Specificity: 0.9472573839662447 Threshold: 0.0 Accuracy: 0.7630402384500745 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.68it/s]
Loss: 1.2372466594942155 AUROC: 0.8230427520305112 AUPRC: 0.6293467037092159 Sensitivity: 0.27458492975734355 Specificity: 0.9668344007319305 Threshold: 0.0 Accuracy: 0.7842707982485685 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0018.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 1.2739253845065832 AUROC: 0.8312034002774863 AUPRC: 0.6487900390969213 Sensitivity: 0.34856175972927245 Specificity: 0.9409282700421941 Threshold: 0.0 Accuracy: 0.7670144063586687 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.65it/s]
Loss: 1.2379455383746856 AUROC: 0.8219921502093316 AUPRC: 0.6275237129793017 Sensitivity: 0.2937420178799489 Specificity: 0.9624885635864593 Threshold: 0.0 Accuracy: 0.7861232738295723 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0019.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.67it/s]
Loss: 1.236969379708171 AUROC: 0.8287629015637755 AUPRC: 0.6385745772702193 Sensitivity: 0.37225042301184436 Specificity: 0.930379746835443 Threshold: 0.0 Accuracy: 0.7665176353700944 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.72it/s]
Loss: 1.2103250616340226 AUROC: 0.8186213293932479 AUPRC: 0.6174364974319329 Sensitivity: 0.32375478927203066 Specificity: 0.9544830741079597 Threshold: 0.0 Accuracy: 0.7881441562815763 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0020.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 1.3576315119862556 AUROC: 0.8351979171872508 AUPRC: 0.6585046733067176 Sensitivity: 0.350253807106599 Specificity: 0.9472573839662447 Threshold: 0.0 Accuracy: 0.7719821162444114 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.66it/s]
Loss: 1.3169783058986868 AUROC: 0.8258727896903434 AUPRC: 0.6379193032347705 Sensitivity: 0.2879948914431673 Specificity: 0.9661482159194876 Threshold: 0.0 Accuracy: 0.7873021219265746 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0021.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.60it/s]
Loss: 1.2704709619283676 AUROC: 0.83129740290956 AUPRC: 0.644754089854926 Sensitivity: 0.4128595600676819 Specificity: 0.9261603375527426 Threshold: 0.0 Accuracy: 0.7754595131644312 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 1.242494252420241 AUROC: 0.8219002791478105 AUPRC: 0.6243606451865783 Sensitivity: 0.3544061302681992 Specificity: 0.9441903019213175 Threshold: 0.0 Accuracy: 0.7886493768945773 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0022.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 1.196653040125966 AUROC: 0.8263628596790583 AUPRC: 0.6281832696296509 Sensitivity: 0.47377326565143824 Specificity: 0.8966244725738397 Threshold: 0.0 Accuracy: 0.7724788872329856 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.52it/s]
Loss: 1.162647932447413 AUROC: 0.8164328555453899 AUPRC: 0.6082557162018605 Sensitivity: 0.43167305236270753 Specificity: 0.9204025617566332 Threshold: 0.0 Accuracy: 0.791512293701583 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0023.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 1.1899873837828636 AUROC: 0.8233488259190246 AUPRC: 0.6196333362301771 Sensitivity: 0.49746192893401014 Specificity: 0.8846694796061885 Threshold: 0.0 Accuracy: 0.7709885742672627 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.69it/s]
Loss: 1.1573837514846557 AUROC: 0.8132086048568681 AUPRC: 0.598672164256156 Sensitivity: 0.4591315453384419 Specificity: 0.9064501372369624 Threshold: 0.0 Accuracy: 0.788480970023577 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0024.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.71it/s]
Loss: 1.082600036635995 AUROC: 0.8169459377773971 AUPRC: 0.6104551093265631 Sensitivity: 0.6717428087986463 Specificity: 0.7939521800281294 Threshold: 0.0 Accuracy: 0.7580725285643318 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:21<00:00, 4.26it/s]
Loss: 1.0630460234098538 AUROC: 0.8063137474162178 AUPRC: 0.5889016439559723 Sensitivity: 0.6411238825031929 Specificity: 0.8108417200365965 Threshold: 0.0 Accuracy: 0.7660828561805322 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0025.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.65it/s]
Loss: 1.1864577550441027 AUROC: 0.822392140903996 AUPRC: 0.6202557165240723 Sensitivity: 0.5042301184433164 Specificity: 0.8839662447257384 Threshold: 0.0 Accuracy: 0.7724788872329856 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.49it/s]
Loss: 1.160993145678633 AUROC: 0.8131618660020401 AUPRC: 0.6038801568648209 Sensitivity: 0.4578544061302682 Specificity: 0.9080512351326624 Threshold: 0.0 Accuracy: 0.7893230043785786 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0026.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 1.201300323009491 AUROC: 0.8214164173812057 AUPRC: 0.6149247936479516 Sensitivity: 0.5042301184433164 Specificity: 0.879746835443038 Threshold: 0.0 Accuracy: 0.76949826130154 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.75it/s]
Loss: 1.1675009432659353 AUROC: 0.8113967439376785 AUPRC: 0.5970691014710668 Sensitivity: 0.454661558109834 Specificity: 0.9073650503202195 Threshold: 0.0 Accuracy: 0.7879757494105759 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0027.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 1.3357632514089346 AUROC: 0.8225682471007922 AUPRC: 0.6142988498775915 Sensitivity: 0.3062605752961083 Specificity: 0.9381153305203939 Threshold: 0.0 Accuracy: 0.7526080476900149 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.72it/s]
Loss: 1.3078210171191924 AUROC: 0.8114795593460765 AUPRC: 0.5994084685583134 Sensitivity: 0.29118773946360155 Specificity: 0.9533394327538883 Threshold: 0.0 Accuracy: 0.7787133715055574 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0028.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 1.3038297221064568 AUROC: 0.8232619627273613 AUPRC: 0.6234250315642909 Sensitivity: 0.4077834179357022 Specificity: 0.9177215189873418 Threshold: 0.0 Accuracy: 0.7680079483358172 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.60it/s]
Loss: 1.2689885724616308 AUROC: 0.8148928102788089 AUPRC: 0.6099524425442151 Sensitivity: 0.36590038314176243 Specificity: 0.9377859103385179 Threshold: 0.0 Accuracy: 0.7869653081845739 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0029.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.72it/s]
Loss: 1.1210948750376701 AUROC: 0.8088962187143772 AUPRC: 0.5907938822167478 Sensitivity: 0.6192893401015228 Specificity: 0.8115330520393812 Threshold: 0.0 Accuracy: 0.7550919026328863 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.69it/s]
Loss: 1.0897521549655544 AUROC: 0.7994549665291375 AUPRC: 0.5737752308146578 Sensitivity: 0.5836526181353767 Specificity: 0.8334858188472095 Threshold: 0.0 Accuracy: 0.7675985180195352 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0030.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:07<00:00, 4.50it/s]
Loss: 1.1455209497362375 AUROC: 0.8066342060109327 AUPRC: 0.5880585088796988 Sensitivity: 0.55668358714044 Specificity: 0.8375527426160337 Threshold: 0.0 Accuracy: 0.7550919026328863 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.70it/s]
Loss: 1.1153663739722262 AUROC: 0.7978921360708281 AUPRC: 0.5711182194268997 Sensitivity: 0.5261813537675607 Specificity: 0.8549862763037511 Threshold: 0.0 Accuracy: 0.7682721455035365 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0031.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.77it/s]
Loss: 1.2686444483697414 AUROC: 0.8181941499425275 AUPRC: 0.6126620446726769 Sensitivity: 0.43316412859560066 Specificity: 0.9064697609001406 Threshold: 0.0 Accuracy: 0.767511177347243 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.74it/s]
Loss: 1.2272199350659565 AUROC: 0.8095537724682439 AUPRC: 0.5977047290614109 Sensitivity: 0.39144316730523626 Specificity: 0.92451967063129 Threshold: 0.0 Accuracy: 0.7839339845065678 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0032.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.69it/s]
Loss: 1.2337811421602964 AUROC: 0.8090449570562659 AUPRC: 0.5919860030838302 Sensitivity: 0.4602368866328257 Specificity: 0.8804500703234881 Threshold: 0.0 Accuracy: 0.7570789865871833 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 1.1871085987296155 AUROC: 0.8016335813998052 AUPRC: 0.5767737950275407 Sensitivity: 0.4367816091954023 Specificity: 0.9002744739249772 Threshold: 0.0 Accuracy: 0.7780397440215561 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0033.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 1.217425785958767 AUROC: 0.7909726535634137 AUPRC: 0.5579213936153583 Sensitivity: 0.4619289340101523 Specificity: 0.8607594936708861 Threshold: 0.0 Accuracy: 0.7436661698956781 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 1.175701912372343 AUROC: 0.7823798753007353 AUPRC: 0.5376632112335887 Sensitivity: 0.43039591315453385 Specificity: 0.8796889295516926 Threshold: 0.0 Accuracy: 0.7611990569215223 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0034.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 1.1741962302476168 AUROC: 0.7965295180163778 AUPRC: 0.5706627188304692 Sensitivity: 0.5296108291032149 Specificity: 0.8340365682137834 Threshold: 0.0 Accuracy: 0.7446597118728266 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.71it/s]
Loss: 1.1345252984313554 AUROC: 0.7878602251176943 AUPRC: 0.5544148759784869 Sensitivity: 0.5070242656449553 Specificity: 0.8538426349496798 Threshold: 0.0 Accuracy: 0.7623779050185248 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0035.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.76it/s]
Loss: 1.1864649653434753 AUROC: 0.8039390672559085 AUPRC: 0.5857206900114243 Sensitivity: 0.5346869712351946 Specificity: 0.840365682137834 Threshold: 0.0 Accuracy: 0.7506209637357178 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:20<00:00, 4.61it/s]
Loss: 1.143303051110237 AUROC: 0.7956489631569291 AUPRC: 0.5703619475091856 Sensitivity: 0.5146871008939975 Specificity: 0.8611619396157365 Threshold: 0.0 Accuracy: 0.7697878073425396 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0036.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.78it/s]
Loss: 1.0828943066298962 AUROC: 0.8022934262412512 AUPRC: 0.5862518782376256 Sensitivity: 0.6700507614213198 Specificity: 0.7721518987341772 Threshold: 0.0 Accuracy: 0.7421758569299552 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 1.0650458361512871 AUROC: 0.7952804564983951 AUPRC: 0.5711355973217216 Sensitivity: 0.644316730523627 Specificity: 0.7946020128087832 Threshold: 0.0 Accuracy: 0.7549680026945099 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0037.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 1.2297134324908257 AUROC: 0.8036915666550056 AUPRC: 0.5857317940708128 Sensitivity: 0.494077834179357 Specificity: 0.8621659634317862 Threshold: 0.0 Accuracy: 0.7540983606557377 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 1.18377489844958 AUROC: 0.7960682983200887 AUPRC: 0.5705272769125974 Sensitivity: 0.46296296296296297 Specificity: 0.8838060384263495 Threshold: 0.0 Accuracy: 0.7728191310205457 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0038.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.73it/s]
Loss: 1.1576789319515228 AUROC: 0.8049124109652286 AUPRC: 0.5911777323026471 Sensitivity: 0.571912013536379 Specificity: 0.8396624472573839 Threshold: 0.0 Accuracy: 0.7610531544957775 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.74it/s]
Loss: 1.132715263674336 AUROC: 0.7952343018792526 AUPRC: 0.57200137279995 Sensitivity: 0.5434227330779055 Specificity: 0.8533851784080513 Threshold: 0.0 Accuracy: 0.7716402829235433 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0039.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.75it/s]
Loss: 1.1793940290808678 AUROC: 0.8022398804381713 AUPRC: 0.5871317956856594 Sensitivity: 0.5380710659898477 Specificity: 0.8459915611814346 Threshold: 0.0 Accuracy: 0.7555886736214605 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 1.1460433442105529 AUROC: 0.7935154804929547 AUPRC: 0.56864814964108 Sensitivity: 0.5146871008939975 Specificity: 0.8613906678865508 Threshold: 0.0 Accuracy: 0.7699562142135399 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0040.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.80it/s]
Loss: 1.1296936944127083 AUROC: 0.7986975280877485 AUPRC: 0.5828301560830534 Sensitivity: 0.6209813874788495 Specificity: 0.79957805907173 Threshold: 0.0 Accuracy: 0.7471435668156979 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 1.1000218577282403 AUROC: 0.7891988551317509 AUPRC: 0.5631771324486319 Sensitivity: 0.5925925925925926 Specificity: 0.8218206770356816 Threshold: 0.0 Accuracy: 0.7613674637925227 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0041.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.69it/s]
Loss: 1.2359654121100903 AUROC: 0.7970637861404424 AUPRC: 0.5760468223405296 Sensitivity: 0.4686971235194585 Specificity: 0.8677918424753868 Threshold: 0.0 Accuracy: 0.7506209637357178 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 1.2099024201593092 AUROC: 0.7870168809058926 AUPRC: 0.5565037036236139 Sensitivity: 0.44316730523627074 Specificity: 0.8849496797804208 Threshold: 0.0 Accuracy: 0.7684405523745369 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0042.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.69it/s]
Loss: 1.1693869829177856 AUROC: 0.7852230242193616 AUPRC: 0.5627994462115727 Sensitivity: 0.6006768189509306 Specificity: 0.8045007032348804 Threshold: 0.0 Accuracy: 0.7446597118728266 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 1.1264099792767597 AUROC: 0.7784606762644906 AUPRC: 0.5436870449519055 Sensitivity: 0.5696040868454662 Specificity: 0.8186184812442818 Threshold: 0.0 Accuracy: 0.7529471202425059 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0043.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 1.215945977717638 AUROC: 0.7977658311141572 AUPRC: 0.5802917854940238 Sensitivity: 0.5143824027072758 Specificity: 0.8530239099859352 Threshold: 0.0 Accuracy: 0.7536015896671634 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.73it/s]
Loss: 1.1842516497258218 AUROC: 0.7889921817580586 AUPRC: 0.5626244530143969 Sensitivity: 0.4859514687100894 Specificity: 0.8696248856358646 Threshold: 0.0 Accuracy: 0.7684405523745369 Intermediate Model: ./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0044.model AUROC/AUPRC on Validation Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 32/32 [00:06<00:00, 4.79it/s]
Loss: 1.1467695850878954 AUROC: 0.7942675053129336 AUPRC: 0.5786424301774546 Sensitivity: 0.6091370558375635 Specificity: 0.8016877637130801 Threshold: 0.0 Accuracy: 0.7451564828614009 AUROC/AUPRC on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.78it/s]
Loss: 1.1118094972384873 AUROC: 0.7884633024038961 AUPRC: 0.5635417436861095 Sensitivity: 0.590676883780332 Specificity: 0.8195333943275389 Threshold: 0.0 Accuracy: 0.7591781744695184 Plot AUROC/AUPRC for Each Intermediate Model Epoch with best Validation Loss: 24, 1.075 Epoch with best model Test AUROC: 5, 0.834 Epoch with best model Test Accuracy: 13, 0.8031
AUROC/AUPRC Plots - Best Model Based on Validation Loss
Epoch with best Validation Loss: 24, 1.075
Best Model Based on Validation Loss:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0024.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.77it/s]
Loss: 1.0630460234098538 AUROC: 0.8063137474162178 AUPRC: 0.5889016439559723 Sensitivity: 0.6411238825031929 Specificity: 0.8108417200365965 Threshold: 0.0 Accuracy: 0.7660828561805322
<Figure size 640x480 with 0 Axes>
best_model_val_test_auroc: 0.8063137474162178
best_model_val_test_auprc: 0.5889016439559723
AUROC/AUPRC Plots - Best Model Based on Model AUROC
Epoch with best model Test AUROC: 5, 0.834
Best Model Based on Model AUROC:
./vitaldb_cache/models/ABP_12_RESIDUAL_BLOCKS_64_BATCH_SIZE_1e-04_LEARNING_RATE_003_MINS__ALL_MAX_CASES_9b76f73b_0005.model
Generate Stats Based on Test Data
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 93/93 [00:19<00:00, 4.76it/s]
Loss: 1.595503447517272 AUROC: 0.8339755544104536 AUPRC: 0.6765470234754296 Sensitivity: 0.019157088122605363 Specificity: 0.9990850869167429 Threshold: 0.0 Accuracy: 0.7406534186594813
best_model_auroc_test_auroc: 0.8339755544104536
best_model_auroc_test_auprc: 0.6765470234754296 Total Processing Time: 3734.0100 sec
When we complete our experiments, we will build comparison tables that compare a set of measures for each experiment performed. The full set of experiments and measures are listed below.
Note: each experiment will be repeated with the following time-to-IOH-event durations:
Note: the above list of experiments will be performed if there is sufficient time and gpu capability to complete that before the submission deadline. Should we experience any constraints on this front, we will reduce our experimental coverage to the following 4 core experiments that are necessary to measure the hypotheses included at the head of this report:
For additional details please review the "Planned Actions" in the Discussion section of this report.
[ TODO for final report - collect data for all measures listed above. ]
[ TODO for final report - generate ROC and PRC plots for each experiment ]
We are collecting a broad set of measures across each experiment in order to perform a comprehensive comparison of all measures listed across all comparable experiments executed in the original paper. However, our key experimental results will be focused on a subset of these results that address the main experiments defined at the beginning of this notebook.
The key experimental result measures will be as follows:
The following table is Table 3 from the original paper which presents the measured values for each signal combination across each of the four temporal predictive categories:
We have not yet completed the execution of the experiments necessary to determine our reproduced model performance in order determine whether our results are accurately representing those of the original paper. These details are expected to be included in the final report.
As of the draft submission, the reported evaluation measures of our model are too good to be true (all measures are 1.0). We suspect that there is data leakage in the dataset splitting process and will address this in time for the final report.
Our assessment is that this paper will be reproducible. The outstanding risk is that each experiment can take up to 7 hours to run on hardware within the team (i.e., 7h to run ~70 epochs on a desktop with AMD Ryzen 7 3800X 8-core CPU w/ RTX 2070 SUPER GPU and 32GB RAM). There are a total of 28 experiments (7 different combinations of signal inputs, 4 different time horizons for each combination). Should our team find it not possible to complete the necessary experiments across all of the experiments represented in Table 3 of our selected paper, we will reduce the number of experiments to focus solely on the ones directly related to our hypotheses described in the beginning of this notebook (i.e., reduce the number of combinations of interest to 4: ABP alone, ABP+EEG, ABP+ECG, ABP+ECG+EEG). This will result in a new total of 16 experiments to run.
Our proposal included a collection of potential ablations to be investigated:
Given the amount of time required to conduct each experiment, our team intends to choose only a small number of ablations from this set. Further, we only intend to perform ablation analysis against the best performing signal combination and time horizon from the reproduction experiments. In order words, we intend to perform ablation analysis against the following training combinations, and only against the models trained with data measured 3 minutes prior to an IOH event:
Time and GPU resource permitting, we will complete a broader range of experiments. For additional details, please see the section below titled "Plans for next phase".
Our team intends to address the manner in which the experimental results align with the published results in the paper in the final submission of this report. The amount of time required to complete model training and result analysis during the preparation of the Draft notebook was not sufficient to complete a large number of experiments.
The difficult aspect of the preparation of this draft involved the data preprocessing.
The most notable suggestion would be to correct the hyperparameters published in Supplemental Table 1. Specifically, the output size for residual blocks 11 and 12 for the ECG and ABP data sets was 496x6. This is a typo, and should read 469x6. This typo became apparent when operating the size down operation within Residual Block 11 and recognizing the tensor dimensions were misaligned.
Additionally, more explicit references to the signal quality index assessment tools should be added. Our team could not find a reference to the MATLAB source code as described in reference [3], and had to manually discover the GitHub profile for the lab of the corresponding author of reference [3] in order to find MATLAB source that corresponded to the metrics described therein.
Our team plans to accomplish the following goals in service of preparing the Final Report:
Walkthrough of the notebook, no need to make slides. We expect a well-timed, well-presented presentation. You should clearly explain what the original paper is about (what the general problem is, what the specific approach taken was, and what the results claimed were) and what you encountered when you attempted to reproduce the results. You should use the time given to you and not too much (or too little).
print(f'All done!')
All done!